【问题标题】:Get data from multidimensional array js从多维数组js中获取数据
【发布时间】:2020-01-08 12:42:16
【问题描述】:

我有一个JS数组,例如:

const array1 = [{"entrance":"20","a":"10"},{"entrance":"15","b":"25"}];

我想将entrance 值作为一个新数组。直到今天我还在使用for-loop 来做这件事,就像这样:

var entrance = [];
for(i=0;i<array1.length;i++){
  entrance[i] = array1[i]["entrance"];
}

这很完美,但我想知道是否有更漂亮的方法来做到这一点。你有什么建议吗?

【问题讨论】:

    标签: javascript arrays get


    【解决方案1】:

    使用.map():

    const array1 = [{"entrance":"20","a":"10"},{"entrance":"15","b":"25"}];
    const entrance = array1.map((e) => e.entrance);
    
    console.log(entrance);

    【讨论】:

      【解决方案2】:

      你可以试试map()

      map() 方法创建一个新数组,其中填充了对调用数组中的每个元素调用提供的函数的结果。

      const array1 = [{"entrance":"20","a":"10"},{"entrance":"15","b":"25"}];
      
      var entrance = array1.map(i => i.entrance);
      console.log(entrance);

      【讨论】:

        【解决方案3】:

        使用map 和destructuring 的漂亮方式:

        const array1 = [{"entrance":"20","a":"10"},{"entrance":"15","b":"25"}];
        const entrances = array1.map(({ entrance }) => entrance);
        

        【讨论】:

          【解决方案4】:

          还没有提到。你可以使用forEach:

          const array1 = [{"entrance":"20","a":"10"},{"entrance":"15","b":"25"}];
          const res = [];
          array1.forEach((obj) => {res.push(obj.entrance)});
          console.log(res);
          

          【讨论】:

            猜你喜欢
            • 2012-07-21
            • 2019-11-04
            • 2016-02-13
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2019-05-20
            相关资源
            最近更新 更多