数组中每一项相加求和
// 第一种方法 直接用reduce
var arr = [1,2,3,4,5,6]
var newarr = arr.reduce((total,num)=>{
return total+num;
})
console.log(arr)
console.log(newarr)//21
// 第二种方法 用foreach遍历
var newarr2 = 0;
arr.forEach(item =>{
return newarr2 += item
})
console.log(newarr2)//21
要求将数组中的0项去掉,将不为0的值存入一个新的数组,生成新的数组
var arr = [12,0,0,8,0,9,10]
var newarr3 = arr.filter(item =>{
return item != 0
})
console.log('数组删除0',newarr3)//数组删除0 (4) [12, 8, 9, 10]
数组去重
var arr = [1,2,3,3,4,4,5,6]
var newarr4 = []
arr.forEach(item =>{
newarr4.indexOf(item) == -1 ? newarr4.push(item) : 'nihaop'
})
console.log(newarr4)//[1, 2, 3, 4, 5, 6]
取出数组中的最大值
var arr = [1,4,765,99,2,34]
var max = arr[0]
arr.forEach((item,index)=>{
return max > item ? max :max = arr[index]
})
console.log('max',max)//765
取出数组最小值
var arr = [2,4,765,99,2,34]
var min = arr[0]
arr.forEach((item,index)=>{
return min < item ? min : min = arr[index]
})
console.log('min',min)//2
数组从小到大排序
var arr = [3,6,1,4,2,8,100,99]
var newarr5 =arr.sort((a,b)=>{
return a-b;
})
console.log(arr,newarr5)
数组从大到小排序
var arr = [3,6,1,4,2,8,100,99]
var newarr6 =arr.sort((a,b)=>{
return b-a;
})
console.log(arr,newarr6)
颠倒数组
var arr = [1,2,3,4,6,5,9,78]
var newarr7 = arr.reverse()
console.log(arr)//[78, 9, 5, 6, 4, 3, 2, 1]
console.log(newarr7)//[78, 9, 5, 6, 4, 3, 2, 1]