📜  从二维数组 javascript 中获取列(1)

📅  最后修改于: 2023-12-03 15:06:33.531000             🧑  作者: Mango

从二维数组 JavaScript 中获取列

在开发 JavaScript 应用程序时,您可能会接触到二维数组。这种数组由行和列组成,是一种非常方便的数据结构。然而,有时您需要从一个二维数组中获取特定的一列数据。在本文中,我们将介绍如何使用 JavaScript 在二维数组中获取列。

获取列的第一种方法:使用循环

使用循环是最简单的方法之一,可以使用 for 循环遍历数组的每一行,并获取每行的指定列的值。以下是一个函数的示例,该函数将返回一个指定列的数组:

/**
 * 从二维数组中获取指定列的数据
 *
 * @param {Array} arr - 要获取列数据的二维数组
 * @param {Number} col - 要获取的列号,从 0 开始
 * @returns {Array} 返回指定列的一维数组
 */
function getCol(arr, col) {
  let result = [];
  for (let i = 0; i < arr.length; i++) {
    result.push(arr[i][col]);
  }
  return result;
}

您可以使用以下代码测试此函数:

let arr = [
  [1, 2, 3],
  [4, 5, 6],
  [7, 8, 9]
];

let col = getCol(arr, 1);
console.log(col); // [2, 5, 8]
获取列的第二种方法:使用 Array.map()

使用 Array.map() 也可以从一个二维数组中获取一列数据。 Array.map() 方法接受一个回调函数,并将其应用于数组中的每个元素。以下是一个示例函数:

/**
 * 从二维数组中获取指定列的数据
 *
 * @param {Array} arr - 要获取列数据的二维数组
 * @param {Number} col - 要获取的列号,从 0 开始
 * @returns {Array} 返回指定列的一维数组
 */
function getCol(arr, col) {
  return arr.map(function(row) {
    return row[col];
  });
}

您可以使用以下代码测试此函数:

let arr = [
  [1, 2, 3],
  [4, 5, 6],
  [7, 8, 9]
];

let col = getCol(arr, 1);
console.log(col); // [2, 5, 8]
总结

在本文中,我们介绍了从一个二维数组中获取列的两种方法。第一种方法是使用循环实现,而第二种方法使用 Array.map()。无论您使用哪种方法都需要了解数组的结构,从而能够正确地获取所需的列数据。