我有一个具有键值对的对象。另一个数组只有部分键集。我想要第三个数组,它只包含值,并且也只包含第二个数组中存在的那些键。
let x= {'Hello':'Monday', 'World':'Tuesday', 'Program':'Wednesday'}
let y = ['Program','Hello']
我在输出中需要的是:y=['Wednesday', 'Monday']
试试这个
let x= {'Hello':'Monday', 'World':'Tuesday', 'Program':'Wednesday'}
let y = ['Program','Hello']
console.log(y.map(val => x[val]));
如果我理解正确,您希望确保结果仅包含现有值。如果是这样,则需要遍历y
值并确保x
对象具有此类属性。
let x = {'Hello': 'Monday', 'World': 'Tuesday', 'Program': 'Wednesday'},
y = ['Program', 'Hello', 'Test'],
z = [];
for (let prop of y) {
if (prop in x) {
z.push(x[prop]);
}
}
console.log(z);