Rob*_*ral 2 javascript string function object ecmascript-6
这是猫品种的对象,以及每种猫的数量:
const cats = {
  abyssinian: {
    number: 23
  },
  persian: {
    number: 12
  },
  siamese: {
    number: 7
  }
};
Run Code Online (Sandbox Code Playgroud)
假设我想计算猫的总数。我将用于reduce计算数组值的总和。
但是要从上面的对象创建一个数组,我有两个选择:
const cats = {
  abyssinian: {
    number: 23
  },
  persian: {
    number: 12
  },
  siamese: {
    number: 7
  }
};
Run Code Online (Sandbox Code Playgroud)
我什么时候会选择一个?这里的最佳做法是什么?
使用.keys(),如果你需要做的钥匙的东西其他比对检索值。否则,您只会获取键来访问值,如果可以使用其他方法直接获取值,则这是多余的-因此,在这种情况下,Object.values()一开始就可以使用。
Object.keys可能有用的示例:
const obj = {
  prop1: 'val1',
  prop2: 'val2'
};
const result = Object.keys(obj).map((key) => [key, obj[key]]);
console.log(result);Run Code Online (Sandbox Code Playgroud)
您也可以使用Object.entries一次获取键和值:
const obj = {
  prop1: 'val1',
  prop2: 'val2'
};
const result = Object.entries(obj).map(([key, val]) => key + '---' + val);
console.log(result);Run Code Online (Sandbox Code Playgroud)