我希望这可以用 Javascript 来完成。
I Have something like this:
有这样的东西:
var MYOBJECT = {
method1: function(){//some cool},
addMethodToObject: function (a_new_method){
//whats need to be here to add the
method passed in "a_new_method" to MYOBJECT ?
}
}
这个想法是调用:
MYOBJECT.addMethodToObject(function otherMethod(needThis){return needThis;});
现在 MYOBJECT 已将方法作为新方法传递,我可以执行以下操作:
MYOBJECT.otherMethod('say Hi');
将输出
"say Hi"
提前致谢。
最佳答案
我没有测试上面的答案,但它们都需要从内部更改对象。 我需要一些东西而不从内部更改对象,所以我想出了这个解决方案:
首先创建对象的实例,然后:
yourObject.yourMethodName = function(methodParam1, methodParam2) {
doWhatYouNeed;
};
然后执行为:
yourObject.yourMethodName(methodParam1, methodParam2);
希望这有帮助。
关于javascript - 动态添加方法到对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10237521/