是否可以通过实现任一
调用或应用来实现对象的
调用,或者以其他方式?例如.:
@H_
403_2@var obj = {};
obj.call = function (context,arg1,arg2,...) {
...
};
...
obj (a,b);
不,但您可以
添加属性到一个
函数,例如
@H_
403_2@function foo(){}
foo.myProperty = "whatever";
编辑:要使一个对象被调用,你仍然需要执行上述操作,但它可能看起来像:
@H_
403_2@// Augments func with object's properties
function makeCallable(object,func){
for(var prop in object){
if(object.hasOwnProperty(prop){
func[prop] = object[prop];
}
}
}
然后你只需使用“func”函数,而不是对象.真的所有这个方法都是两个对象之间的复制属性,但是它可能会帮助你.