数组的方法总结
1. 数组转换字符串
- toString()
- toLocaleString()
- join()
const arr = [1,5,6,9,3,2,4,6] console.log('toString--->'+arr.toString()) // toString--->1,5,6,9,3,2,4,6 console.log('toLocaleString--->' +arr.toLocaleString()) // toLocaleString--->1,5,6,9,3,2,4,6 console.log('join--->'+ arr.join(',')) // join--->1,5,6,9,3,2,4,6
2.堆栈方法
- push() 在数组最后添加一项 返回值 => 增加数组后的长度
- pop() 删除数组最后一项 返回值 => 删除后的长度
- unshift()在数组最后添加一项 返回值 => 增加数组后的长度
- shift() 删除第一项 返回值 => 删除后的长度
const arr = [1,5,6,9,3,2,4,6] arr.push(10); console.log(arr); arr.pop(); console.log(arr); arr.unshift(0); console.log(arr); arr.shift(); console.log(arr);
3.数组排序 reverse sort 随机排序
- reverse 倒序
- sort((a,b) => a - b) 正序 / sort((a,b) => b-a) 倒序
- 随机排序
// 3. 排序 const arr = [1,2,3,4,5,6] // 1. resverse() console.log(arr.reverse()); // [ 6, 5, 4, 3, 2, 1 ] // 2. sort() // 正序 console.log(arr.sort()); // [ 1, 2, 3, 4, 5, 6 ] console.log(arr.sort((a, b) => a - b)); // [ 1, 2, 3, 4, 5, 6 ] // 倒序 console.log(arr.sort((a, b) => b - a)); // [ 6, 5, 4, 3, 2, 1 ] // 随机排序 function compate() { return Math.random() - 0.5 ; } console.log(arr.sort(compate)); // [ 1, 3, 5, 4, 6, 2 ] / [ 6, 1, 5, 4, 3, 2 ]
4. 数组拼接 concat 返回一个新数组
concat 不能将多维数据进行拼接
const arr = [1,2,3]; console.log(arr, arr.concat(3, 4)) // [ 1, 2, 3 ] [ 1, 2, 3, 3, 4 ] console.log(arr, arr.concat([3, 4])) // [ 1, 2, 3 ] [ 1, 2, 3, 3, 4 ] console.log(arr, arr.concat([3, [4]])) // [ 1, 2, 3 ] [ 1, 2, 3, 3, [ 4 ] ] // 现在常用 [...arr] console.log(arr, [...arr, 3, 4]) // [ 1, 2, 3 ] [ 1, 2, 3, 3, 4 ]
5. 删改方法
- slice() 原数组不会变化,返回一个新数组
- splice() 会修改原数组,将删除的元素变成数组返回
// 5. 数组的删改 const arr = [1,2,3,4,5] // slice [ ) 左闭右开; start , end console.log(arr.slice(2)) // 2 代表从下标为2的位置截取到末尾 返回一个新数组 [ 3, 4, 5 ] console.log(arr.slice(2,4)) // 代表从下标为2的位置截取下标为4的位置但不包括4 [ 3, 4 ] console.log(arr.slice(-2)) // 倒着数下标为2的位置截取到末尾 [ 4, 5 ] console.log(arr.slice(-4,-1)) // 倒着数下标为4的位置截取截取下标为1的位置但不包括1 [ 2, 3, 4 ] // 将字符串转为数组 const str = '123456'; console.log(Array.prototype.slice.call(str)) // [ '1', '2', '3', '4', '5', '6' ] // splice() // 1. 起始 增加或删除的位置 // 2. 指定删除元素的个数 // 3. 添加元素 // console.log(arr.splice(2)) // [ 3, 4, 5 ] // console.log(arr.splice(0, 4)) // [ 1, 2, 3, 4 ] // console.log(arr, arr.splice(4,0,'a','b')) // [ 1, 2, 3, 4,'a', 'b', 5] []
