これは古い質問かもしれませんが、私は実際にはjavascriptの割り当てとして参照によってオブジェクトをコピーする性質について興味があります。私はJavaScriptに新しいの一種だとハードコピー対シャローコピーjavascript
var a = {};
var b = a;
a.name = "Renato";
console.log(b);
Object {name: "renato"}
場合、これは実際にオブジェクトの割り当てのデフォルトとしてシャローコピーを持っている私の注意を引いたことを意味
。ハードコピーを作成するには、ミックスインを作成する必要があります。私は変換が非常に暗黙的であるように見えるので、なぜこれがデフォルトとして選択されたのだろうと思っていました。ありがとう!
なぜこれがデフォルトとして選択されたのか不思議です。ほとんどの場合、それは最良のオプションになるためです。JavascriptはGarbage Collected環境であり、その強みの1つはオブジェクトを渡すことができます。漏れ。もう一つの利点は速度です。 – Keith
さらに、深いコピーはよりコストがかかります。デフォルトで浅いコピーを行うことで、プログラマは自由に実行したいものを自由に選択できます – Alex