次のJavaScriptスニペットを考えてみましょう
var arr = [];
function pushMe()
{
var temp = { "name": "me" };
arr.push(temp)
console.log(arr)
temp["name"] = "you";
arr.push(temp)
console.log(arr)
}
私は出力を次のように見て驚いた[Object { name="you"},Object { name="you"}]
参照をプッシュしているので、両方が同じオブジェクトを参照する必要があります。しかし、少なくとも最初のプッシュ出力の後は、Object { name="me"}
なぜこうなった??
ありがとう :)