获取2d数组javascript中的所有0索引数据
let a = [["", "2", "", ""], ["1", "3", "", ""], ["", "", "4", ""]]
index = 0
output = ["", "1", ""]
同样获取所有剩余的索引数据
index= 1
output = ["2", "3", ""]
要获得第一个索引:
const result = Array.map(a=>a[0]);
result将包含嵌套数组中所有元素的第一个索引。这通过迭代数组并获取第一个索引元素来工作
你可以使用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);
你可以使用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))
使用lodash,您可以使用索引作为迭代:
const result = _.map(a, 1);