我对 JavaScript 很陌生,并且在变量和函数的某些属性方面遇到了问题。
我想要发生的是在一个函数中定义了一个 var
,在另一个函数中更改了值,然后将新值返回到最初定义它的函数。
这是我制作的一个简单示例:
function getIt(){
var x = 3;
doubleIt(x);
alert("The new value is: " + x);
}
function doubleIt(num){
num *= 2;
return num;
}
运行时,警报仍显示
x
的原始值。是否有语法可以更改原始函数中的值? 最佳答案
最简单的方法是将结果分配回变量
x = doubleIt(x);
演示:http://jsfiddle.net/ES65W/
如果你真的想通过引用传递,你需要一个对象容器来承载值。对象在 JavaScript 中通过引用传递:
function getIt(){
var myObj={value:3};
doubleIt(myObj);
alert("the new value is: " + myObj.value);
}
function doubleIt(num){
num.value *=2;
//return num;
}
演示:http://jsfiddle.net/dwJaT/
关于javascript - 在 JavaScript 中的另一个函数中更改变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9855625/