javascript - 在数组中循环遍历数组

标签 javascript arrays for-loop

我有一个 for 循环,用于记录要素图层中每个要素的坐标数组。然而,奇怪的是,特征层的第 33 个元素是由 3 个数组组成的数组 - 长度分别为 16、58 和 246。我如何访问这些更深一层的数组 - 并将它们也记录到控制台?

enter image description here

if (data.features.length > 0) {
    for(var i = 0; i < features.length; i++){
        console.log(i, features[i].geometry.coordinates)
    }
}

最佳答案

你可以像下面这样使用递归:

function iterateArray(array) {
  array.forEach((item) => {
    if (Array.isArray(item)) {
      iterateArray(item);
    }
    else {
      console.log(item);
    }
  });
}

var array = [1, 2, [3, 4, 5], [6, [7, [8, 9]]]];

iterateArray(array);

关于javascript - 在数组中循环遍历数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45001195/

相关文章:

python - 嵌套循环和元组

R for循环,如何在每次迭代的循环外部存储数据帧以避免性能下降

javascript - 是pjscrape慢还是PhantomJS慢?替代刮刀?

javascript - 创建用于 ajax 函数的 ColdFusion 查询的 javascript 数组

python - for 循环在 Python 中如何工作?喜欢在内心深处发生什么过程?

ruby .gsub 替换/替换特定范围的索引

php - Array_merge 与 +

javascript - 'mousedown' 的 addEventListener 与 'click' 的 addEventListener 不同

javascript - 为在 Javascript/jQuery 中创建的类调用方法

javascript - lodash 计算数组元素之间的差异