【发布时间】:2015-09-24 21:22:10
【问题描述】:
有没有办法将 Javascript/NodeJS 中的对象按值传递给函数?还是语言中内置了限制?
【问题讨论】:
标签: javascript node.js parameter-passing pass-by-value
有没有办法将 Javascript/NodeJS 中的对象按值传递给函数?还是语言中内置了限制?
【问题讨论】:
标签: javascript node.js parameter-passing pass-by-value
你无法控制 JS 如何传递变量(afaik),所以它总是通过引用传递(某些条件可能适用)。正确的做法是创建对象的副本并将其传入。
此功能内置于 jQuery 中(不是很难复制)。
var clone = function(object) { return $.extend(true, {}, object) };
这将创建对象的深层副本,可以安全地传递到可能具有意外副作用的方法中。
【讨论】: