clone - jQuery オブジェクト コピー - JavaScriptでオブジェクトをディープクローンする最も効率的な方法は何ですか?

JavaScript オブジェクト コピー / javascript / object

JavaScriptオブジェクトのクローンを作成する最も効率的な方法は何ですか? obj = eval(uneval(o)); を見てきました。使用されていますが、これは非標準であり、Firefoxでのみサポートされています。

obj = JSON.parse(JSON.stringify(o)); ようなことをしました。しかし、効率に疑問を投げかけます。

また、様々な欠陥を持つ再帰的なコピー機能も見てきました。
正統派のソリューションが存在しないことに驚きました。

26 revs, 21 users 25%



Answer #1

オブジェクトの中に変数だけがあり、関数がないと仮定すると、次のように使うことができます。

var newObject = JSON.parse(JSON.stringify(oldObject));