属性
length
length
属性,获取数组长度。
let arr = [1,2,3,4,5]
console.log(arr.length); // 5
方法
from()
from()
方法,可以重一个类数组对象或可迭代对象总创建一个新的,浅拷贝的数组实例
- 参数一:想要换成数组的类数组或数组
- 参数二:参数一数组中每个元素的回掉
let arr = [1,2,3,4,5]
console.log(Array.from(arr)); // [ 1, 2, 3, 4, 5 ]
console.log(Array.from(arr,e => e > 1)); // [ false, true, true, true, true ]
isArray()
Array.isArray()
用来判断传进来的参数是否是一个数组。
let arr = [1,2,3,4,5]
console.log(Array.isArray(arr)); // true
concat()
concat()
方法用于连接单个或多个数组,返回一个新的数组。
console.log(arr.concat([7,8,9]));
every()
every()
测试一个数组内所有元素
是否都能通过某个函数的测试,返回一个Boolean
值。如果是空数组始终返回true
let arr = [1,2,3,4,5]
let kArr = []
function fun (e){return e < 4};
console.log(arr.every(fun)); // false
console.log(kArr.every(fun)); // true
find()
find()
返回满足条件的第一个元素
let arr = [1,2,3,4,5]
let findArr = arr.find(e=>e>2)
console.log(findArr);
findIndex()
findIndex()
返回曼珠条件的1第一个元素的下标
let arr = [1,2,3,4,5]
let findIndexArr = arr.findIndex(e => e > 2);
console.log(findIndexArr);
flat()
flat()
方法,可以把多层嵌套的数组扁平化。
let flatArr = [1,[2,[3,[4,[5,[6]]]]]];
console.log(flatArr.flat(Infinity)); // [ 1, 2, 3, 4, 5, 6 ]
includes()
includes()
判断数组中是否有指定的项存在,返回一个Boolean
值
let arr = [1,2,3,4,5]
console.log(arr.includes(2)); // true
indexOf()
indexOf()
判断数组中是佛如有指定的项存在。存在返回该项下标,不存在返回-1。
let arr = [1,2,3,4,5]
console.log(arr.indexOf(2)); // 1
console.log(arr.indexOf(8)); // -1
join()
join()
把数组转为指定(传入值)分割的字符串。
let arr = [1,2,3,4,5]
console.log(arr.join(','));
keys()
keys()
返回存在的
let arr1 = [1,,,2]
console.log(Object.keys(arr1));
values()
方法返回一个新的
Array Iterator
对象,该对象包含数组每个索引的值
arr = ['a','b','c','d']
for(k of arr.values()){
console.log(k);
// a
// b
// c
// d
}
pop()
pop()
方法,删除尾部最后一项,返回该值。
let arr = [1,2,3,4,5]
console.log(arr.pop()); // 5
console.log(arr); // [ 1, 2, 3, 4 ]
push()
push()
方法,将一个或多个元素添加到数组的末尾,并且返回该数组的长度
。
let pushArr = ['a','b']
console.log(pushArr.push(6)); // 3
console.log(pushArr); // [ 'a', 'b', 6 ]
shifu()
shift()
方法从数组中删除第一个元素,并返回被删除元素的值。
let arr = [1,2,3,4,5]
console.log(arr.shift()); // 1
console.log(arr); // [ 2, 3, 4, 5 ]
unshift()
unshift()
方法从数组前面增加有一个元素,并且返回改变后的数组长度。
console.log(arr.unshift(6)); // 5
console.log(arr); // [ 6, 2, 3, 4, 5]
slice()
slice()
传入begin
和end
来切割数组。浅拷贝一份新的数组,原数组不会改变。
let arr = [1,2,3,4,5]
console.log(arr.slice(2)); // [ 3, 4, 5 ]
console.log(arr.slice(2,4)); // [ 3, 4 ]
reverse()
reverse()
方法,翻转数组。
let arr = [1,2,3,4,5]
console.log(arr.reverse()); // [ 5, 4, 3, 2, 1 ]
some()
some()
方法,数组中只有有一个条件满足就返回,返回一个Boolean
值。
arr = [1,2,3,4,5]
let someArr = arr.some(e=>e>2)
console.log(someArr);
sort()
sort()
数组排序。
arr = [13,1,6,12,14]
let sortArr1 = arr.sort()
console.log(sortArr1); // [ 1, 12, 13, 14, 6 ]
let sortArr2 = arr.sort((a,b)=>a - b)
console.log(sortArr2); // [ 1, 6, 12, 13, 14 ]
splice()
splice()
删除、替换现有元素,并放回被修改的内容。此方法会修改原数组。
- 参数一:从第几位开始删除,下标从0开始。
- 参数二:要删除多少项。
- 参数三:替换值。
let arr = [1,2,3,4,5]
console.log(arr.splice(2)); // 返回被删除的值[ 3, 4, 5 ]
console.log(arr); // 剩余数组[ 1, 2 ]
arr = [1,2,3,4,5]
console.log(arr.splice(2,1)); // 返回被删除的值[ 3 ]
console.log(arr); // 剩余数组[ 1, 2, 4, 5 ]
arr = [1,2,3,4,5]
console.log(arr.splice(2,1,'a')); // 返回删除的值[ 3 ]
console.log(arr); // 剩余数组[ 1, 2, 'a', 4, 5 ]
toString()
toString()
返回一个字符串,表示指定的数组及其元素。
arr = [1,2,3,4,5]
console.log(arr.toString()); // 1,2,3,4,5