我是JavaScript的新手,我遇到了变量和函数的一些属性问题。
我想要发生的是在一个函数中定义var
,在另一个函数中更改值,然后将新值返回到最初定义它的函数。
以下是我做的一个简单示例:
function getIt(){
var x = 3;
doubleIt(x);
alert("The new value is: " + x);
}
function doubleIt(num){
num *= 2;
return num;
}
运行此操作时,警报仍会显示x
的原始值。是否有语法可以更改原始函数中的值?
答案 0 :(得分:7)
最简单的方法是将结果分配回变量
x = doubleIt(x);
如果您确实想通过引用传递,则需要一个对象容器来传递该值。对象在JavaScript中通过引用传递:
function getIt(){
var myObj={value:3};
doubleIt(myObj);
alert("the new value is: " + myObj.value);
}
function doubleIt(num){
num.value *=2;
//return num;
}