function square(arr) {
var result=[].concat(arr);
result.forEach(function(i){
i=i*i;
console.log(i);
})
return result;
}
var arr=[1,2,3,4];
console.log(square(arr))
任务是对数组中的所有元素进行平方,现在我的输出是原始数组。我想知道为什么。
附注第一个 console.log 给出了输出 1;4;9;16。
第二个console.log输出[1,2,3,4]
forEach
正在迭代数组,但它不返回任何vvalue。使用map函数将返回一个具有更新结果的新数组
function square(arr) {
return arr.map(function(i) {
return i * i;
})
}
var arr = [1, 2, 3, 4];
console.log(square(arr))
如果您仍打算使用forEach
将更新后的值推送到数组中并返回该数组
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)