【问题标题】:Remove first item of each array inside of array in Javascript [duplicate]在Javascript中删除数组中每个数组的第一项[重复]
【发布时间】:2019-12-15 08:05:00
【问题描述】:

我在 javascript 中有以下数组:

DATA[
[ 3, "Name1" ],
[ 5, "Name2" ],
[ 10, "Name3" ],
[ 55, "Name4" ]
]

我想把它转换成:

DATA[ "Name1", "Name2", "Name3", "Name4" ]

在javascript中可以吗?

谢谢

【问题讨论】:

  • 是的,这是可能的。到目前为止,您尝试过什么?

标签: javascript


【解决方案1】:

Array.prototype.map 的简单用例

let data = [
  [3, "Name1"],
  [5, "Name2"],
  [10, "Name3"],
  [55, "Name4"]
];

data = data.map(arr => arr[1]);

console.log(data);

【讨论】:

    【解决方案2】:

    有几种方法可以做到这一点,但这里有一个:

    for(var i=0;i<DATA.length;i++){
      DATA[i] = DATA[i][1];//only grab the 2nd item in the array
    }
    

    【讨论】:

      【解决方案3】:

      只需使用map 并抓取每个子数组的第二项即可构建新数组。

      const DATA = [
        [ 3, "Name1" ],
        [ 5, "Name2" ],
        [ 10, "Name3" ],
        [ 55, "Name4" ]
      ]
      
      const newArr = DATA.map(i => i[1])
      
      console.log(newArr)

      【讨论】:

        【解决方案4】:

        试试这个:

        let data = [
          [3, "Name1"],
          [5, "Name2"],
          [10, "Name3"],
          [55, "Name4"]
        ];
        
        const result =  data.map(([k, v])=>v);
        
        console.log(result);

        【讨论】:

          【解决方案5】:

          试试这个:

          var data =[[ 3, "Name1" ],[ 5, "Name2" ],[ 10, "Name3" ],[ 55, "Name4" ]];
          var newdata=[];
          data.forEach(function(element){
              if(Array.isArray(element)){
                  newdata.push(element[1]);
              }
          });
          console.log(newdata);
          

          【讨论】:

            猜你喜欢
            • 2014-12-03
            • 1970-01-01
            • 2017-12-15
            • 1970-01-01
            • 2015-04-03
            • 1970-01-01
            • 2011-12-02
            • 2013-08-03
            • 2020-11-01
            相关资源
            最近更新 更多