私はいつもこのようなコードを書かなければならないことにうんざりしています。
function shallowExtend(obj1,obj2){
var key;
for ( key in obj2 ) {
if ( obj2.hasOwnProperty(key) === false ) continue;
obj1[key] = obj2[key]
}
}
または、自分でコードを記述したくない場合は、すでにそれを行うライブラリを実装します。確かにES6 +のようなものを提供してくれるだろう、この上の救助に来ていますObject.prototype.extend(obj2...)
か、Object.extend(obj1,obj2...)
ES6 +はそのような機能を提供しますか?まだそこにない場合、そのような機能は計画されていますか?計画されていない場合、なぜそうしないのですか?
[[Prototype]]
か、それともチェーン上のプロパティを扱うのか?「深い」または「浅い」コピーを行いますか?列挙不可および書き込み不可のプロパティはどうですか?私はむしろ、私が必要とすることを実行する小さなライブラリー関数を持っていると思います。