這可能是一個老問題,但我真的很好奇通過引用複製對象的本質作爲JavaScript中的任務。硬拷貝vs淺拷貝javascript
這意味着,如果
var a = {};
var b = a;
a.name = "Renato";
console.log(b);
Object {name: "renato"}
我有點新的JavaScript,這確實引起了我的注意有一個淺拷貝爲對象分配的默認值。我搜索了一下,爲了創建一個硬拷貝,你必須創建一個mixin。我想知道爲什麼這個選擇作爲默認,因爲它的轉變似乎是非常隱含的。謝謝!
'想知道爲什麼選擇這個作爲默認'因爲在大多數情況下,這將是最好的選擇,.. Javascript是一個垃圾收集環境,它的優點之一是能夠傳遞對象而不必擔心內存泄漏。而另一個優點是速度.. – Keith
此外,深度複製成本更高。默認做淺拷貝讓程序員可以自由地明確地選擇他們想要執行哪一個 – Alex