我有一个包含数组的自定义javascript类,当我添加一个返回长度的方法时,它总是为0.我确定它缺少了什么......有什么想法吗?
function MyObject(){
this.name='';
}
var selected = (function(){
var arr = new Array();
return {
add : function(s){
arr.push(s);
},
length: function(){
return arr.length;
}()
};
})();
$(document).ready(function(){
var obj = new MyObject();
obj.name = 'test';
selected.add(obj);
selected.add(obj);
alert(selected.length);
});
答案 0 :(得分:3)
length: function(){
return arr.length;
}()
错字:length是调用匿名函数的结果(0)。最后删除()
并使用:
alert(selected.length());