遍历Javascript中的数组 [英] Iterating over Arrays in Javascript

查看:47
本文介绍了遍历Javascript中的数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是JavaScript新手.我正在尝试练习一些示例JavaScript问题.关于遍历数组的问题,我有些困惑.谁能指出我正确的方向?

I am a JavaScript newbie. I'm trying to practice some sample JavaScript problems. I'm a little stuck when it comes to this question about iterating over arrays. Can anyone point me in the right direction?

我正在尝试获取oldArray中的值,将每个值加5,然后存储在newArray中.

I am trying to take the values in oldArray, add 5 to each of them, and store in 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),并以数组作为参数来调用函数.

Bug in your code is an additional parenthesis and closing brace in push statement line, just remove them. Also there is no need to set function parameter here since both array are accessible inside the function, if you want to pass then you need to change it to function plusFive(oldArray), and call the function with array as parameter.

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>'
);

没有数组作为参数的函数

Function without array as parameter

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() 用于从现有阵列创建修改后的阵列


But it's better to use map() for creating a modified array from an existing array

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>'
);

这篇关于遍历Javascript中的数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆