我正在尝试构建我的第一个自定义对象,它看起来像这样:

function  URLObject()
{
   this.syllables = new Array();
   etc...

   this.AddtoSyllables = AddtoSyllables;
   function AddtoSyllables(AWord)
   {
       var SylCount = this.syllables.length;
       alert("This is SylCount: " + SylCount);
   }
}

var myobj = new URLObject();
myobj.AdtoSyllables("text");


上面代码的执行导致JS引擎打印出以下内容:

这是Sylcount:NAN

-要么-

这是SylCount:未定义。

我已经在Head First Javascript,Javascript圣经以及各种JS网站中查看了信息。它们全部详尽地介绍了对象数组的使用,但没有一个讨论对象内的数组。

但是我在这里做错了,我不知道是什么。有人可以帮忙吗?

最佳答案

干得好:

function  URLObject()
{
   this.syllables = [];
   etc...
}

URLObject.prototype.addToSyllables = function(aWord) {
  var SylCount = this.syllables.length;
  alert("This is SylCount: " + SylCount);
}

var myobj = new URLObject();
myobj.adtoSyllables("text");


.prototype将其后声明的函数添加到构造函数构造的每个对象中。 (在您的情况下,每个由new URLObject()实例化的对象)

关于javascript - 将数组放入自定义对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16428266/

10-09 08:27