我想输入一个数组数组,然后将它们分开。例如,我有一系列位置,例如多个经纬度坐标。 但我想编写一个循环,然后将该数组作为数组,并为所有纬度坐标和所有经度坐标使用make和array。
例如,如果我有
input = [[45,45],[35,75] [85,90]] 它会使2个数组作为我的输出 [45,35,85] 和 [45,75,90]
答案 0 :(得分:0)
您可以转置数组并将lat
和long
当作单个数组。
var input = [[45, 45], [35, 75], [85, 90]],
[lat, long] = input.reduce((r, a) => a.map((v, i) => (r[i] || []).concat(v)), []);
console.log(lat);
console.log(long);
.as-console-wrapper { max-height: 100% !important; top: 0; }
答案 1 :(得分:-1)
尝试此操作,循环遍历每个坐标,然后将每个坐标的第一个值放入称为first
的数组中,并将每个坐标的第二个值放入称为second
的数组中。.
var input = [[45,45],[35,75],[85,90]];
function splitValues(coordinates) {
var first = [];
var second = [];
for (var i = 0; i < coordinates.length; i++) {
first.push(coordinates[i][0]);
second.push(coordinates[i][1]);
}
}
splitValues(input);
答案 2 :(得分:-1)
这将有助于假设您输入中始终有2个值数组,并且只需要2个结果
const array = [[45,45],[35,75],[85,90]]
let first = []
let second = []
array.forEach((item)=>{
first.push(item[0])
second.push(item[1])
})
console.log(first)
console.log(second)