我确定我在这里遗漏了一些明显的东西,但是我希望changeMe方法的参数可以"通过引用"传递 - 换句话说,对函数内部参数的更改将改变函数外部的变量.
以下内容在jsfiddle中运行,使用Chrome的F12开发人员工具显示控制台输出.http://jsfiddle.net/fzEpa/
var object1 = { Property1: 'Value1' };
changeMe(object1);
console.log(object1);
function changeMe(refToObject) {
console.log(refToObject);
refToObject = { Property1: 'Value2' };
console.log(refToObject);
}
Run Code Online (Sandbox Code Playgroud)
Que*_*tin 11
它通过引用传递,但它是对象的引用,而不是对object1
变量的引用(也是对象的引用).
您将通过引用新对象来覆盖对象的引用.
这使原始对象的原始引用保持不变.
要修改对象,您可以执行以下操作:
function changeMe(refToObject) {
refToObject.Property1 = 'Value2';
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
179 次 |
最近记录: |