【问题标题】:Replacing keys by values according to some predefined object in javascript根据javascript中的一些预定义对象用值替换键
【发布时间】:2020-02-14 09:43:47
【问题描述】:

我有一个具有键值对的对象。另一个数组只有部分键集。我想要第三个数组,它只包含值,并且也只包含第二个数组中存在的那些键。

let x= {'Hello':'Monday', 'World':'Tuesday', 'Program':'Wednesday'}
let y = ['Program','Hello']

我在输出中需要的是: y=['Wednesday', 'Monday']

【问题讨论】:

标签: arrays typescript ecmascript-6 angular7


【解决方案1】:

试试这个

let x= {'Hello':'Monday', 'World':'Tuesday', 'Program':'Wednesday'}
let y = ['Program','Hello']

console.log(y.map(val => x[val]));

【讨论】:

  • 请添加说明。只是代码是不完整的答案
  • 代码很明显。所以觉得不需要解释。它只是一个数组的映射函数。
  • 如果这很明显,OP 就不会问了。请记住,您是在为读者回答,他们有各个层次。所以解释什么和为什么总是更好。
【解决方案2】:

如果我对您的理解正确,您希望确保结果仅包含现有值。如果是这样,您需要遍历 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);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-03-31
    • 2021-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-27
    • 1970-01-01
    相关资源
    最近更新 更多