js数组相加 里面不是数字的按0处理
时间: 2024-10-09 08:13:49 浏览: 38
js代码-数组内两数相加等于某值
在JavaScript中,当你需要将两个数组相加,其中包含的元素可能既包括数值也可能是非数值(如字符串、布尔值等),你可以选择先转换所有元素为数字后再进行相加。对于无法转换为数字的元素,通常会将其转换为`0`。这里有一个简单的示例:
```javascript
function addArrays(arr1, arr2) {
return arr1.map(Number).reduce((sum, num) => sum + (num || 0), 0)
+ arr2.map(Number).reduce((sum, num) => sum + (num || 0), 0);
}
// 示例
let array1 = [1, 2, "a", true];
let array2 = [3, 4, "", false];
console.log(addArrays(array1, array2)); // 输出:10
```
在这个例子中,`map(Number)`函数尝试将每个元素转换为数字,如果失败则返回`0`。然后使用`reduce()`函数累加结果,并对非数值项做同样的处理。
阅读全文