我无法将值传递给对象的方法。当我打电话给它时,我希望能够将一个变量传递给一个对象方法,但是我似乎无法弄清楚这是如何完成的。将变量传递给javascript方法
注意:我需要传递这些值byRef,但是我使用字符串来保持示例简单,在我传递对象的实际代码中。
function makeObject(){
var object = [ ];
object.parameter1 = 0;
object.parameter2 = "text";
object.method = function (var1, var2){
console.log(var1+" "+var2);
}
return object;
}
var myObject = makeObject();
这是我没有料到它的工作
myObject.method("hello", "world"); //console returns "undefined undefined"
后来我读了那个绑定可能是答案,但是这似乎并没有工作
myObject.method.bind("hello", "world"); //console returns "undefined undefined"
我觉得你在这里混合概念,加上'object'不是实际的对象'{}'是'数组[]'。你正在尝试构造一个构造函数?如果你阅读'bind',你会发现它并不是那样使用,'bind'只是改变'this'的上下文。 – elclanrs 2013-03-16 06:02:41
你可能不应该使用变量名称对象,因为它是一个保留字 – 2013-03-16 06:04:14
其实它应该工作。如果你在控制台中测试它,它就可以工作。你应该使用'{}'。无论如何,数组也是对象,所以问题可能在别的地方。 – dfsq 2013-03-16 06:04:57