JS的数组迭代方法
本文实例讲述了JS的数组迭代方法。分享给大家供大家参考。具体实现方法如下:
<!doctypehtml>
<html>
<headlang="zh">
<metacharset="utf-8">
<title>js数组迭代</title>
<metaname="renderer"content="webkit">
<script>
vararr1=[1,2,3,4,5,6];
functiondouble(x){
return2*x;
}
//map可以产生一个新的数组
//alert(arr1.map(double));
functionprint(x){
console.log(x*2)
}
arr1.forEach(print);
functioneven(x){
returnx%2==0
}
vararr2=[2,4,,5,6];
//alert(arr2.every(even))//false;
//alert(arr2.some(even))//true;
functionadd(a,b){
returna*b;
}
vararr3=[1,2,4,5];
varfactorial=arr3.reduce(add);
//alert(factorial)//40
vararr4=[1,24,5,6,7,8,234,4];
alert(arr4.filter(even))
</script>
<pre>
map,filter可以产生一个新的数组
vararr1=[1,2,3,4,5,6];
functiondouble(x){
return2*x;
}
//alert(arr1.map(double));
//forEach是对数组每项都调用某个函数,不返回
functionprint(x){
console.log(x*2)
}
arr1.forEach(print);
//some,every参数是一个有返回布尔值的函数
functioneven(x){
returnx%2==0
}
vararr2=[2,4,,5,6];
//alert(arr2.every(even))//false;
//alert(arr2.some(even))//true;
//reduce接受一个函数,返回一个值,不断累加到最后一项
//同理,reduceRight是由后面累加到第一项,具体可从CONCAT看出
functionadd(a,b){
returna*b;
}
vararr3=[1,2,4,5];
varfactorial=arr3.reduce(add);
//alert(factorial)//40
//filter与every类似,参入一个返回布尔值的函数,返回一个新的数组
</pre>
</body>
</html>
希望本文所述对大家的javascript程序设计有所帮助。