分享
三行代码  ›  专栏  ›  技术社区  ›  dedi wibisono

如何在比较后检索数组中的值

  •  1
  • dedi wibisono  · 技术社区  · 1 周前

    let test = [
      {
        name : 'doe',
        age : 8
      },
      {
        name : 'john',
        age : 17
      }
    ],
    console.log(test.reduce((acc, curr) => curr.age > acc ? curr.age : acc, 0))
    

    我做了一个与年龄的比较,但我希望结果是一个名字( John ). 如果我能控制 curr.name 结果是 doe . 我怎么能这么做?

    1 回复  |  直到 1 周前
        1
  •  2
  •   iota    1 周前

    您可以将整个对象存储在累加器中并使用解构赋值。

    let test = [
      {
        name : 'doe',
        age : 8
      },
      {
        name : 'john',
        age : 17
      }
    ];
    let {name} = test.reduce((acc, curr) => curr.age > acc.age ? curr : acc, {age: 0});
    console.log(name);