javascript - 修改自执行函数中的参数

标签 javascript pass-by-reference anonymous-function self-executing-function

我希望能够修改传递给自执行函数的参数。

下面是一些示例代码:

var test = 'start';
(function (t) {t = 'end'} )(test);
alert(test) //alerts 'test'

here is a fiddle .变量 test 没有改变。我怎样才能改变它,就像通过引用一样?

最佳答案

传入一个object,它是pass-by-reference:

var test = {
    message: 'start'
};
(function (t) {t.message = 'end'} )(test);
alert(test.message)

仅供引用,Array 也是按引用传递

关于javascript - 修改自执行函数中的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15822727/

相关文章:

javascript - 计算具有特定类的元素数量,然后添加对它们进行编号的 ID

javascript - 好处和。在本地托管 jQuery 的陷阱

JavaScript/jQuery 组合具有相同优先级的数字

c# - 当存储该引用的局部变量设置为 null 时,为什么静态变量不设置为 null?

javascript - Node.js Streams 对象模式引用或复制

c# - 匿名函数体变量保存在哪里?

javascript - HTML "Range"输入问题

c++ - C++ 中奇怪的自动引用

javascript - 高阶 javascript 函数

scala - Scala 中的匿名递归函数