改变数组:push、pop、shift、unshift、splice、sort、reverse
不改变原数组:(返回新数组)concat、slice、(返回字符串)join,(返回索引)indexOf,lastIndexOf
迭代方法(不改变原数组):(无返回值)forEach,(返回新数组)map,filter,(返回布尔值)some,every,(返回一个值)reduce,reduceRight
1.改变数组
(1)push(添加的数据):将多个参数添加到数组的末尾 ,并返回数组的长度,原数组改变
//push(添加的数据) 在数组后面添加,原数组改变,返回数组长度
console.log(arr)//[1,2,3]
console.log(arr.push(4))//4 数组的长度
console.log(arr)//[1,2,3,4] 原数组改变
(2)pop():将数组的末尾移除最后一项 ,并返回移除项,,原数组改变
//pop() 删除数组最后一个,原数组改变,返回删除的值
console.log(arr)//[1,2,3,4]
console.log(arr.pop())//4 删除项的值
console.log(arr)//[1,2,3] 原数组改变
(3)shift():在数组的前面删除第0项数据,并返回删除项(数组为空返回undefined),原数组改变
//shift() 删除数组第0项数据,原数组改变,返回删除的值
console.log(arr)//[1,2,3]
console.log(arr.shift())//1 删除项的值
console.log(arr)//[2,3] 原数组改变
(4)unshift(添加的数据):将参数添加到数组开始,并返回数组的长度,原数组改变
//unshift() 数组前面添加一项,原数组改变,返回数组长度
console.log(arr)//[2,3]
console.log(arr.unshift(5))//3 删除项的值
console.log(arr)//[5,2,3] 原数组改变
(5)sort():排序,,原数组改变
// sort()数组排序--排序是按照一位一位排序的,先排第一个数据的第一位,改变原数组
var arr3=[5,1,53,18,42,19,6]
console.log(arr3.sort())//[1, 18, 19, 42, 5, 53, 6]
console.log(arr3.sort(function (a, b) {
return a - b//a-b递增,b-a递减
}))//[1, 5, 6, 18, 19, 42, 53]
console.log(arr3)//[1, 5, 6, 18, 19, 42, 53]
(6)reverse():反转数组项,原数组改变
console.log(arr3)//[1, 5, 6, 18, 19, 42, 53]
console.log(arr3.reverse())//[53, 42, 19, 18, 6, 5, 1]
(7)splice(起始位置,删除项数,插入的任意数量的项): 实现删除、插入、替换,返回删除项,原数组改变
//splice(开始索引