是否可以在 javascript 中以某种方式为本地变量分配别名/引用?
我的意思是类似 C 的东西:
function foo() {
var x = 1;
var y = &x;
y++;
alert(x); // prints 2
}
= 编辑 =
是否可以在这段代码中为 arguments.callee 添加别名?:
function foo() {
arguments.callee.myStaticVar = arguments.callee.myStaticVar || 0;
arguments.callee.myStaticVar++;
return arguments.callee.myStaticVar;
}
最佳答案
在 JavaScript 中,整数和字符串等原始类型按值传递,而对象按引用传递。因此,为了实现这一点,您需要使用一个对象:
// declare an object with property x
var obj = { x: 1 };
var aliasToObj = obj;
aliasToObj.x ++;
alert( obj.x ); // displays 2
关于javascript变量引用/别名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1686990/