【问题标题】:get first elements from array using node js / javascript [duplicate]使用节点js / javascript从数组中获取第一个元素[重复]
【发布时间】:2021-09-23 01:09:29
【问题描述】:

let array =
[[`animal`,`carnivours`],
 [`cow`,`milk`],
 [`plant`,`small`],
 [`fish`,`tank`]]
 
 console.log(array[0]);

我知道如果我想从数组中获取第一个值,我必须使用数组 [0] 从数组中获取所有名字,但在这里我从数组列表中获取第一个数组作为我的

预期值是这样的

animal
cow
plant
fish

任何从列表中获取所有名字的最简单方法,例如 array[0] 或有点像这样?

【问题讨论】:

标签: javascript node.js arrays object


【解决方案1】:

您可以使用Array#map 创建一个新数组,其中包含每个内部数组的第一个元素。

let array =
[[`animal`,`carnivours`],
 [`cow`,`milk`],
 [`plant`,`small`],
 [`fish`,`tank`]];
let res = array.map(x => x[0]);
console.log(res);
// or
console.log(array.map(([f]) => f));

【讨论】:

  • 谢谢你,因为我已经知道这种方法,但试图最小化代码我想我必须使用方法:) 但谢谢
  • array.map(x => x[0]);不是很多代码!
【解决方案2】:

您可能自定义了一个 column 函数,该函数返回数组的第 i 列:

Array.prototype.column = function(i) {
  try { 
    return this.map( x => x[i]);
  } catch (e) {
    // catch error: out of index or null array ....
    console.log(e);
  }
}

let array =
[[`animal`,`carnivours`],
 [`cow`,`milk`],
 [`plant`,`small`],
 [`fish`,`tank`]];
  
console.log(array.column(0))
console.log(array.column(1))

【讨论】:

    【解决方案3】:
     let array =
    [[`animal`,`carnivours`],
     [`cow`,`milk`],
     [`plant`,`small`],
     [`fish`,`tank`]]
     
    for (let i = 0; i < array.length; i++) {
      console.log(array[i][0]);
    }
    

    https://www.codeply.com/p/XrUKcnlLZQ

    【讨论】:

    • 你为什么要这样做,而不是地图功能!!??
    猜你喜欢
    • 2017-09-22
    • 2021-01-24
    • 2021-08-25
    • 2016-07-27
    • 1970-01-01
    • 2017-12-15
    • 1970-01-01
    • 1970-01-01
    • 2023-03-20
    相关资源
    最近更新 更多