我有一个对象,想要根据数组找到并返回对象值。
var profile = {
'firstName' : 'John',
'lastName' : 'Doe',
'mood' : 'happy'
};
var updated= ['firstName','mood'];
当更改相关字段时,更新的数组会随键更改。
感谢。
答案 0 :(得分:3)
我有一个对象,想要根据数组找到并返回对象值。
你不需要使用underscore.js。只需迭代数组并从对象中提取必要的属性,就可以使用普通的js执行此操作:
var profile = {
'firstName': 'John',
'lastName': 'Doe',
'mood': 'happy'
};
var updated = ['firstName', 'mood'];
updated.forEach(function(prop) {
console.log(profile[prop]);
});
当更改相关字段时,更新的数组会随键更改。
我不确定我是否完全理解您,但似乎您需要profile
对象属性的值数组,其名称包含在updated
数组中。使用Array.prototype.map可以解决问题:
var profile = {
'firstName': 'John',
'lastName': 'Doe',
'mood': 'happy'
};
var updated = ['firstName', 'mood'];
var values = updated.map(function(prop) {
return profile[prop];
});
console.log(values);
答案 1 :(得分:2)