在2d Array Javascript中查找零索引数据

问题描述 投票:0回答:4

获取2d数组javascript中的所有0索引数据

let a = [["", "2", "", ""], ["1", "3", "", ""], ["", "", "4", ""]]
index = 0

output = ["", "1", ""]

同样获取所有剩余的索引数据

index= 1
output = ["2", "3", ""]
javascript multidimensional-array ecmascript-6 underscore.js lodash
4个回答
1
投票

要获得第一个索引:

const result = Array.map(a=>a[0]);

result将包含嵌套数组中所有元素的第一个索引。这通过迭代数组并获取第一个索引元素来工作


2
投票

你可以使用Array#map方法与ES6 destructuring feature。解构有助于从对象中提取某些属性(Javascript Array也是一个对象)。

let a = [
  ["", "2", "", ""],
  ["1", "3", "", ""],
  ["", "", "4", ""]
];
let index = 0;

let output = a.map(({[ index ]: v }) => v)

console.log(output);


index = 1;

output = a.map(({[ index ]: v }) => v)

console.log(output);

2
投票

你可以使用reduce

循环遍历数组和数组循环中的每个元素,以获得所需的索引值并将其推送到op。

let a = [["", "2", "", ""], ["1", "3", "", ""], ["", "", "4", ""]]

function getIndex(arr,index){
  return arr.reduce((op,inp) => {
    let val = inp.find((e,i) => i === index )
    op.push(val)
    return op
  },[])
}

console.log(getIndex(a,0))
console.log(getIndex(a,1))

1
投票

使用lodash,您可以使用索引作为迭代:

const result = _.map(a, 1);
© www.soinside.com 2019 - 2024. All rights reserved.