我想通过另一个变量将值设置为变量,该变量将引用第一个变量。 见下面的例子。
var white = 1;
var black = 15;
var flag = 'white';
if (flag == 'white') {
var color = &white;
color++;
} else {
var color = &black;
color--;
}
alert(white + ' ' + black);
//will display 2 15
// or
//will display 1 14
非常感谢。
答案 0 :(得分:0)
JS中没有真正的pass-by-reference。但是,我想出了这个技巧(对象是JS中唯一通过引用传递的东西):
var white = { val: 1 },
black = { val: 15 },
flag = 'white', color;
if (flag == 'white') {
color = white;
color.val++;
} else {
color = black;
color.val--;
}
alert(white.val + ' ' + black.val); // 2, 15
答案 1 :(得分:0)
javascript中没有像&black
,&white
这样的参考变量你可以说
var color = white;
并且警报将显示2 15
你的其他陈述永远不会被执行。
答案 2 :(得分:0)
在JS中,仅通过引用传递给对象。原始值通过引用传递。 JS中没有任何功能可以直接代替C指针。