下划线,找到相同的键并替换值

时间:2015-03-03 17:20:08

标签: javascript underscore.js

我有一个像这样的对象 -

{"house" : red, "car" : green, "apple" : blue};

并且正在发送另一个具有单个键/值的对象

{"apple" : green}

我需要能够用新值替换“apple”(在本例中)的值。所以我需要使用与我的新项目相同的键来查找和替换(值)。我不知道每次第一个对象的顺序是什么,所以如果我每次都可以搜索并通过匹配键来找到和替换值,那么(索引可能是?)。不一定要用下划线,只需要用它来玩。

2 个答案:

答案 0 :(得分:3)

您可以使用underscore.js方法extend

_.extend({"house" : red, "car" : green, "apple" : blue}, {"apple" : green});

答案 1 :(得分:2)

您可以使用常规JS执行此操作:

var myObj = {"house" : red, "car" : green, "apple" : blue};
var newObj = {"apple" : green};

var keyToReplace = Object.keys(newObj)[0] //assuming the new object only has 1 key, else, iterate

if (myObj.hasOwnProperty(keyToReplace)) {
    myObj[keyToReplace] = newObj[keyToReplace]
}