Javascript 在 foreach 之外添加一个元素,但它们是连接而不是添加

标签 javascript loops foreach concatenation addition

我有一个foreach

var a= [38, 34, 22, 19];
Array.forEach(function (b){
  b= a+ b;  
  a.push(b);
});

但是当结果是

["38", "3834", "38,383422", "38,3834,38,38342219"]

我怎样才能阻止它们连接并得到结果

["38, "72", "94", "119"]

最佳答案

Array.forEach 将抛出错误。使用映射函数。希望以下代码片段有用。

此外a.push(b);将插入同一个数组

var a = [38, 34, 22, 19];
// create a variable to store the updated value
var tempNum = 0;
//use map which will return a new array
var m = a.map(function(b) {
  //update tempValue with new value
  tempNum = tempNum + b
  return tempNum; // return tempNum
});
console.log(m)

关于Javascript 在 foreach 之外添加一个元素,但它们是连接而不是添加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48335864/

相关文章:

php - Mysql join 返回多行,但 php foreach 需要单条记录

javascript - 哪个 jquery 事件可以帮助我更好(点击,悬停?)

java - 如何在 Java 中打印字符串数组的偶数和奇数位置字符?

JavaScript isset() 函数

c - 通过 scanf 读取一行但读取了两次

java - 在Java中,是否可以使用某种while循环(或任何东西)来确定输入提示的数量?

c++ - FOR_EACH 宏在调用宏中有两个或多个参数

php - 从 foreach 循环中剥离最后一个字符

javascript - 如何在 jQuery 中使用 "this"?

javascript - 尝试用字符串访问点表示法变量