Javascript 在参数中通过引用传递类变量
所以我试着做以下几点Javascript 在参数中通过引用传递类变量,javascript,Javascript,所以我试着做以下几点 var myVar; function testFunction(args){ args.cacheVar = new Date(); } testFunction({cacheVar:myVar}); 但不是更改myVar的值,而是更改args.cacheVar的值。 我希望发生的是myVar=new Date()。不是args.cacheVar 如何使用当前设置完成此操作?(使用参数)您没有向函数传递myVar。您正在传递一个对象。该对象可能会被更
var myVar;
function testFunction(args){
args.cacheVar = new Date();
}
testFunction({cacheVar:myVar});
但不是更改myVar的值,而是更改args.cacheVar的值。
我希望发生的是myVar=new Date()。不是args.cacheVar
如何使用当前设置完成此操作?(使用参数)您没有向函数传递
myVar
。您正在传递一个对象。该对象可能会被更新,但由于您在任何地方都没有对它的引用,所以不会发生任何事情
在传递对象之前,需要将其保存为变量
var myVar = {cacheVar:null};
function testFunction(args){
args.cacheVar = new Date();
}
testFunction(myVar);
您正在传递对
testFunction
的引用,但它是对动态创建的对象文本的引用:testFunction({cacheVar:myVar})
您的意思是将对象的cacheVar
属性从myVar
更改为newdate()
?或者您的意思是更改变量myVar
的值并为其指定new Date()
?为什么必须通过参数
?
function testFunction()
{
myVar = new Date();
}
//alternative:
function testFunction()
{
return new Date();
}
var myVar = testFunction();