1.join()
将数组转换成字符串,可以给它规定一个连接字符,默认是逗号,不会改变原数组
const arr = [1, 2, 3, 4, 5];
const arr1 = arr.join();
const arr2 = arr.join("-");
console.log("arr:", arr); // arr: [ 1, 2, 3, 4, 5 ]
console.log("arr1:", arr1); // arr1: 1,2,3,4,5
console.log("arr2:", arr2); // arr2: 1-2-3-4-5
2.push() 和 pop()
push():将参数添加到数组的末尾,返回修改后的长度
pop():删除数组最后一项,返回删除元素的值
都改变原数组
可看作栈方法,push()进栈,pop()出栈
const arr = [1, 2, 3, 4, 5];
const length1 = arr.push("99");
console.log("push后返回的length1:", length1); // push后返回的length1: 6
console.log("push后的arr:", arr); // push后的arr: [ 1, 2, 3, 4, 5, 99 ]
const list = arr.pop();
console.log("pop后返回的项:", list); // pop后返回的list: 99
console.log("pop后的arr:", arr); // pop后的arr: [ 1, 2, 3, 4, 5 ]
3.unshift() 和 shift()
unshift():将参数添加到数组的开头,返回数组的长度
shift():删除数组的第一项,返回删除元素的值
都改变原数组,可以看作是队列方法
const arr = [1, 2, 3, 4, 5];
const length1 = arr.unshift(99);
console.log("unshift后返回的length1:", length1); // unshift后返回的length1: 6
console.log("unshift后的arr:", arr); // unshift后的arr: [ 99, 1, 2, 3, 4, 5 ]
const length2 = arr.shift();
console.log("shift后返回的length1:", length2); // shift后返回的length1: 99
console.log("shift后的arr:", arr); // shift后的arr: [ 1, 2, 3, 4, 5 ]
4.sort()
将数组中的参数从小到大排序,但比较的是字符串
如果要按照数值的大小对数字进行排序,需要返回一个排序函数
改变原数组
arr = [13, 24, 51, 3];
console.log(arr.sort()); // [13, 24, 3, 51]
const arr1 = arr.sort((a, b) => {
return a - b;
})
console.log(arr1); // [ 3, 13, 24, 51 ]
console.log(arr); // [ 3, 13, 24, 51 ]
5.reverse()
reverse():反转数组项的顺序
不改变原数组
const arr = [13, 24, 51, 3];
console.log(arr.reverse()); // [ 3, 51, 24, 13 ]
console.log(arr); // [13, 24, 51, 3]
6.concat()
concat():连接两个或多个数组
不改变原数组,返回一个新数组
const arr = [13, 24, 51, 3];
const arr1 = [1, 2, 3, 4, 5];
const arr2 = arr.concat(arr1);
console.log(arr); // [13, 24, 51, 3]
console.log(arr2); // [13, 24, 51, 3,1, 2, 3, 4, 5]
7.slice()
slice(start,end):提取字符串的某个部分,左闭右开,并以新字符串返回
不改变原数组
const arr = [13, 24, 51, 3];
const arr1 = arr.slice(0, 2);
console.log(arr); // [13, 24, 51, 3]
console.log(arr1); // [ 13, 24 ]
8.splice()
splice():删除、插入和替换
splice(start,length):删除,start:开始删除参数的第一个位置;length:要删除的长度
splice(start,length,newValue):插入,
改变原数组
const arr = [13, 24, 51, 3];
arr.splice(2, 1);
console.log(arr); // [ 13, 24, 3 ]
const arr2 = [13, 24, 51, 3];
arr2.splice(2, 2, 99);
console.log(arr2); // [ 13, 24, 99 ]
9.every()
every():判断数组中每一项是否满足条件,只有所有项都满足条件,才会返回true
const arr = [13, 24, 51, 3];
const arr1 = arr.every((x) => {
return x > 13;
});
const arr2 = arr.every((x) => {
return x > 2;
});
console.log(arr1); // false
console.log(arr2); // true
10.some()
some():判断数组中是否存在满足条件的参数,只要有一项满足条件就会返回true
const arr = [13, 24, 51, 3];
const arr1 = arr.some((x) => {
return x < 4;
});
console.log(arr1); // true