[英]Iterating over Arrays in Javascript
我是一个JavaScript新手。 我正在尝试一些示例JavaScript问题。 关于迭代数组的问题,我有点卡住了。 谁能指出我正确的方向?
我试图获取oldArray
的值,为每个值添加5,并存储在newArray
。
var oldArray = [12, 45, 6, 23, 19, 20, 20, 15, 30, 42];
var newArray = [];
function plusFive(oldArray[i]) {
for (var i = 0; i < oldArray.length; i++) {
newArray.push(oldArray[i]) + 5) };
}
}
代码中的错误是push语句行中的附加括号和右括号,只需删除它们即可。 此外,不需要在此处设置函数参数,因为两个数组都可以在函数内部访问,如果要传递,则需要将其更改为function plusFive(oldArray)
,并使用数组作为参数调用函数。
newArray.push(oldArray[i] + 5) ;
//-----------------------^----^-
工作片段:
var newArray = []; function plusFive(oldArray) { for (var i = 0; i < oldArray.length; i++) { newArray.push(oldArray[i] + 5) }; } plusFive([1,2,4,6,32,44]); document.write( 'New array :' + '<pre>' + JSON.stringify(newArray) + '</pre>' );
没有数组作为参数的函数
var oldArray = [12, 45, 6, 23, 19, 20, 20, 15, 30, 42]; var newArray = []; function plusFive() { for (var i = 0; i < oldArray.length; i++) { newArray.push(oldArray[i] + 5) }; } plusFive(); document.write( 'Old array :' + '<pre>' + JSON.stringify(oldArray) + '</pre>' + 'New array :' + '<pre>' + JSON.stringify(newArray) + '</pre>' );
map()
从现有数组创建修改后的数组
var oldArray = [12, 45, 6, 23, 19, 20, 20, 15, 30, 42]; var newArray = oldArray.map(function(v) { return v + 5; }); document.write( 'Old array :' + '<pre>' + JSON.stringify(oldArray) + '</pre>' + 'New array :' + '<pre>' + JSON.stringify(newArray) + '</pre>' );
您的代码几乎是正确的,但您错误地关闭了括号,并且您需要正确命名函数参数。 对于函数参数,您只是给出标签。 你不能将变量命名为something[a]
,而参数不能被命名为 something[a]
。
尝试:
var oldArray = [12, 45, 6, 23, 19, 20, 20, 15, 30, 42];
var newArray = [];
function plusFive(oldArray) {
for (var i = 0; i < oldArray.length; i++) {
newArray.push(oldArray[i] + 5)
}
}
plusFive();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.