📌  相关文章
📜  根据另一个数组中的条件确定数组元素的值 (1)

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

根据另一个数组中的条件确定数组元素的值

在开发中,我们经常需要根据另一个数组中的条件来确定数组元素的值。这种操作可以使用多种方法实现,本文将介绍其中的两种。

方法一:使用循环进行匹配

这种方法的思路比较简单,就是我们利用循环来遍历数组,每次循环都判断当前元素是否符合条件,如果符合,则设置该元素的值。代码如下:

const arr1 = [1, 2, 3, 4, 5];
const arr2 = [true, false, true, false, true];
for (let i = 0; i < arr1.length; i++) {
  if (arr2[i]) {
    arr1[i] = arr1[i] * 2;
  }
}
console.log(arr1); // [2, 2, 6, 4, 10]

上面的代码中,我们利用了两个数组arr1和arr2,通过循环来匹配arr2中的元素是否为true,如果是的话,就将arr1对应位置上的元素乘以2,并将结果赋值给arr1对应位置上的元素。

方法二:使用Array.prototype.map()方法进行映射

这种方法较为简洁,可读性也更高。我们可以使用Array.prototype.map()方法来对原数组进行映射,并返回一个新的数组。代码如下:

const arr1 = [1, 2, 3, 4, 5];
const arr2 = [true, false, true, false, true];
const newArr = arr1.map((item, index) => {
  if (arr2[index]) {
    return item * 2;
  } else {
    return item;
  }
});
console.log(newArr); // [2, 2, 6, 4, 10]

上面的代码中,我们首先定义了两个数组arr1和arr2,然后利用Array.prototype.map()方法对arr1进行映射,并返回一个新的数组newArr,在映射的过程中,我们利用了arr2数组中的元素来确定每一个元素的值。

至此,我们介绍了两种根据另一个数组中的条件确定数组元素的值的方法,开发者可以根据自己的需要选择相应的方法进行实现。