我確信之前已經問過并回答過這個問題,但我似乎無法找到正確的術語來找到答案。我需要動態創建一系列函式供以后使用,這些函式在創建時使用引數定義的某些值。例如:
var i = "bar";
var addBar = function(x) {
// needs to always return x " " "bar"
return x " " i;
}
i = "baz";
var addBaz = function(x) {
// needs to always return x " " "baz"
return x " " i;
}
alert(addBar("foo")); // returns "foo baz" because i = "baz"
有沒有辦法可以傳遞i給這些函式,以便使用原始值,而不是對變數的參考?謝謝!
uj5u.com熱心網友回復:
你必須做一些事情來存盤變數。創建一個回傳函式的函式是一種方法。
var i = "bar";
var addBar = (function (i) {
return function(x) {
return x " " i;
}
}(i));
i = "baz";
var addBaz = (function (i) {
return function(x) {
return x " " i;
}
}(i));
console.log(addBar("foo"));
console.log(addBaz("foo"));
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/394848.html
標籤:javascript 功能 参数传递 传值
上一篇:Node.JS主回圈不會回傳
