2017-05-06 13 views
0

//私は1つの方法//私が知っている2lodashを使用して、あるJSONオブジェクトから別のJSONオブジェクトに必要な値をコピーするにはどうすればよいですか?

var obj1={ 
"name":"mayur", 
    "age":23 
} 
var obj2={ 
    "name":"keyur", 
    "age":29, 
    "limit":54, 
    "surname":"godhani" 
} 

を持って

var j1 = {name: 'Varun', age: 24}; 
var j2 = {code: 'NodeJS',name:'mayur', alter: 'C++'} 

for (var key in j1) { 
    if(j2[key]) 
     j1[key] = j2[key]; 
} 

console.log(j1); 

//しかし、私はlodashまたは1行にしたい

// - >結果がでなければなりません1ライン分の

var obj1={ 
    "name":"keyur", 
    "age":29 
} 
+1

(http://benalman.com/news/2010/03/theres-no-such-thing-as-a [ "JSONオブジェクト" のようなものはありません] -json /) – Andreas

+0

どういう意味ですか? –

答えて

0

のようなこの、

01を試してみてください

var j1 = {name: 'Varun', age: 24}; 
 
var j2 = {code: 'NodeJS',name:'mayur', alter: 'C++'} 
 
Object.keys(j1).map(a=> j1[a] = j2[a] ? j2[a]: j1[a]) 
 
console.log(j1);

1

Lodashを使用すると、オブジェクトに追加するassignを使用することができますし、pickはOBJ1に存在するobj2からプロパティを選択します。

var obj1 = { 
 
    "name": "mayur", 
 
    "age": 23 
 
} 
 

 
var obj2 = { 
 
    "name": "keyur", 
 
    "age": 29, 
 
    "limit": 54, 
 
    "surname": "godhani" 
 
} 
 

 
var result = _.assign(obj1, _.pick(obj2, _.keys(obj1))) 
 
console.log(result)
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.15.0/lodash.min.js"></script>

関連する問題