2016-07-01 5 views
0

ここで2つのオブジェクトである値/他のオブジェクトキーに応じてオブジェクトから値/キーを削除しますオブジェクト2には存在しません。値はオブジェクトごとに非常に異なるため、オブジェクトをマージすることはできません。「は、機能」

これは伝統的な命令的な構造で行うことができますが、私はlodashライブラリの助けを借りて、より機能的な方法を探しています。あなたは本当にlodashを必要としない

object1: { 
    email: somevalue 
    url: somevalue 
} 

答えて

2

+0

これは、新しいオブジェクトを作成しても問題ない場合に便利です。 – Pointy

3

: あなたはそうする方法を知っていますので、結果になります。

_.pick(object1, Object.keys(object2)) 

これは新しいオブジェクトを生成します:あなたは次の操作を行うことができますlodashで

Object.keys(object1).forEach(function(key) { 
    if (!(key in object2)) 
    delete object1[key]; 
});