嗯,这不是一个简单的问题,但在fiddle中,您会看到我正在尝试做的简化版本:
我想实例化一个对象,执行我需要初始化它的所有操作,但我想要声明:
var obj = new class;
在某些条件下将'false'返回给obj。
无论如何这里是代码:
var cl = function(id){
this.init(id);
if(this.id > 5){
return false;
}
};
cl.prototype = {
init: function(id){
this.id = id;
}
}
var arr = [];
for(i = 0; i < 10; i++){
var obj = new cl(i);
if(obj){
arr.push(obj);
}
}
console.log(arr);
我知道最终结果可以通过为对象创建一个控件属性来实现,但我很好奇,如果有任何模式可以做到更清洁。