我想知道是否有可能改变一个函数的返回值,即改变一个函数的返回值:通过参数
var foo = function(options) {
var options = options || {},
bar = options.bar || "bar",
baz = options.baz || "baz";
return {
bar: bar,
baz: baz
}
};
我想这样称呼它:
foo({
bar: this.bar + "ret"
});
我的期望是:
>>> { bar: "barret", baz: "baz" }
,但我得到这个代替:
>>> { bar: "undefinedret", baz: "baz" }
我们该怎么做?
'像你期望this'不起作用。请参阅(this)[http://stackoverflow.com/questions/3127429/javascript-this-keyword]问题。 'var obj = foo(); obj.bar + =“ret”;' – zaquest
你期望'this'在函数调用'bar:this.bar +“ret”'? – Sergio