1
我將全局變量globalValue
的值分配給本地數組localArray
。在更改localArray
的值時,globalValue
也被更改。爲什麼會發生這種情況,我該如何解決?本地數組變量在js中更改時全局數組變量的值發生更改
var globalValue=[];
globalValue['firstIndex']=1;
globalValue['secondIndex']=2;
globalValue['thirdIndex']=3;
globalValue['checkIndex']="CHECK";
function checkGlobalChange()
{
var localArray=globalValue;
localArray['checkIndex']="CHECKCHANGE";
return true;
}
function callCheckFuction()
{
alert("Global Array checkIndex Value Before Call : "+globalValue['checkIndex']);
if(checkGlobalChange())
{
alert("Global Array checkIndex Value After Call : "+globalValue['checkIndex']);
}
}
<html>
<body>
<input type="button" value="Check" onclick="callCheckFuction()">
</body>
</html>
你還應該知道,在JS中有(嚴格地說)沒有關聯數組,並且你在那裏有一個'object'。它應該像這樣定義:'var globalValue = {};' – Andy