<script>
var data = [ 1 , 2 , 3 , 4 , 5
];
//1.0传统方法,for遍历数组
var sum1 = 0
;
for (
var i = 0 ; i < data.length ; i ++
) {
sum1 +=
data[ i ];
}
console.log ( sum1 );//15
//---------------------------------------
//ES 中提供的新方法
// 2.0使用数组的reduce方法,该方法需要一个回调函数,回调函数的参数是每次遍历时两两配对的值。
var sum2 = data.reduce (
function ( left , right ) {
//该回调函数从左向右执行
return left +
right;
} )
console.log ( sum2 );//15
//2.1/该回调函数从右向左执行
var sum3 = data.reduceRight (
function ( left , right ) {
return left +
right;
} )
console.log ( sum3 );//15
// 3.0首先用join()方法将数组用加号拼接,再利用eval()可以执行代码形式的字符串求出结果;
var sum4 = eval ( data.join ( "+"
) );
console.log ( sum4 );//15
//最后我们再来整体判断一下
console.log ( sum1 === sum2 );
//true
console.log ( sum2 === sum3 );
//true
</script>
转载于:https://www.cnblogs.com/mysmalldream/p/6995805.html
相关资源:分享JS数组求和与求最大值的方法