JS数组的常用方法
pop()
取出最后一个元素,改变原数组
var arr = [1, 2, 3, 4, 5, 6, 7, 8];
var popRes = arr.pop();
console.log(popRes, arr);
//打印:8;Array(7) [1, 2, 3, 4, 5, 6, 7 ]
shift()
取出开头 ,改变原数组
var arr = [1, 2, 3, 4, 5, 6, 7, 8];
var shiftRes = arr.shift(); //打印1
console.log(shiftRes);
push()
数组末尾添加 改变原数组
var pushRes = arr.push(8);
console.log(arr, pushRes);//和删除不同,它打印的是改变后的数组的长度
unshift()
开头添加,改变原数组
var unshiftRes = arr.unshift(1);
console.log(unshiftRes);//8 打印数组的长度
在非纯函数中,删打印删除的元素,而增打印的是改变后数组的长度
concat
拼接数组,重新创建一个数组
var arr1 = [10, 20, 30, 40, 50];
//concat 拼接数组,重新创建一个数组
var arr3 = arr1.concat([1, 2, 3]);
console.log(arr1, arr3);
splice()
截取---
splice方法用于截取数组中某些内容,可以用于删除数组中某些元素
语法:splice(要截取的索引位置,截取的元素个数,替换新的元素(可不写))
var arr = [1, 2, 3, 4, 5]
arr.splice(1, 2)// 表示从索引 1 开始截取 2 个内容第
//第三个参数没有写,就是没有新内容替换掉截取位置
console.log(arr) // [1, 4, 5]
var arr = [1, 2, 3, 4, 5] // 使用 splice 方法截取数组
arr.splice(1, 2, '我是新内容')
console.log(arr) // [1, '我是新内容', 4, 5]
reverse()
反转---
用于反转数组内容
var arr = [1, 2, 3]
arr.reverse()
console.log(arr) // [3, 2, 1]
sort()
数组排序:默认正序
-------正序-------
var arr = [2, 3, 1] // 使用 sort 方法给数组排序
//a-b正序
arr.sort(function(a,b){
return a - b; })
console.log(arr) // [1, 2, 3]
-------倒序-------
var arr = [2, 3, 1] // 使用 sort 方法给数组排序
//b-a倒序
arr.sort(function(a,b){
return b - a; })
console.log(arr) // [3,2,1]
join()
方法数组转字符串
可以自己定义每一项之间链接的内容, join(要以什么内容链接)
不会改变原始数组,而是把链接好的字符串返回
var arr = [1, 2, 3] // 使用 join 链接数组
var str = arr.join('-')
console.log(arr) // [1, 2, 3]
console.log(str) // 1-2-3 ,字符串类型
indexOf
用来找到数组中某一项的索引
var arr = [1, 2, 3, 4, 5] // 使用 indexOf 超找数组中的某一项
var index = arr.indexOf(3) //查找3的索引
console.log(index) // 2 ->索引
var index1 = arr.indexOf(10)
console.log(index1) //-1 没找到所以返回-1