遍历数组,第一想到的方法就是使用for循环了,利用它我们可以很简单的将全部元素值都扩大一倍(即乘以2)

var a = [5,10,20];
for(var i=0;i<a.length;i++){
	a[i]=2*a[i];
}
console.log(a);

输出结果:

JS数组学习之遍历数组,将元素值全部扩大一倍

也可以使用for in语句来遍历数组。在 for/in 循环结构中,变量 i 表示数组的下标,而 a[i] 为可以读取指定下标的元素值。

var a = [10,20,30];
for(var i in a){
	a[i]=2*a[i];
}
console.log(a);

输出结果:

JS数组学习之遍历数组,将元素值全部扩大一倍

也可以利用之前文章提到的forEach()方法来遍历数组,该方法可以调用数组的每个元素,并将元素传递给回调函数。

var a = [20,30,40];
function f(value) {
	console.log(value*2);
}
a.forEach(f);

输出结果:

JS数组学习之遍历数组,将元素值全部扩大一倍

还可以利用map()方法来遍历数组,map()方法可以对数组的每个元素调用指定的回调函数,并返回包含结果的数组。

array.map(function callbackfn (value, index, array), thisArg);

function callbackfn (value, index, array):一个回调函数,最多可接受三个参数:

  • value:数组元素的值。

  • index:数组元素的数字索引。

  • array:包含该元素的数组对象。

下面通过代码示例来具体了解一下:

示例1:将全部元素值都扩大一倍(即乘以2)

var a = [30,40,50];
function f(value) {
	return value*2;
}
var a1=a.map(f);
console.log(a1);

输出结果:

JS数组学习之遍历数组,将元素值全部扩大一倍

示例2:使用 JavaScript 内置方法作为回调函数

var a = [9, 16];
var a1 = a.map(Math.sqrt);
console.log(a1);  //3,4
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。