属性

length

length属性,获取数组长度。

  1. let arr = [1,2,3,4,5]
  2. console.log(arr.length); // 5

方法

from()

from()方法,可以重一个类数组对象或可迭代对象总创建一个新的,浅拷贝的数组实例

  • 参数一:想要换成数组的类数组或数组
  • 参数二:参数一数组中每个元素的回掉
  1. let arr = [1,2,3,4,5]
  2. console.log(Array.from(arr)); // [ 1, 2, 3, 4, 5 ]
  3. console.log(Array.from(arr,e => e > 1)); // [ false, true, true, true, true ]

isArray()

Array.isArray()用来判断传进来的参数是否是一个数组。

  1. let arr = [1,2,3,4,5]
  2. console.log(Array.isArray(arr)); // true

concat()

concat()方法用于连接单个或多个数组,返回一个新的数组。

  1. console.log(arr.concat([7,8,9]));

every()

every()测试一个数组内所有元素是否都能通过某个函数的测试,返回一个Boolean值。如果是空数组始终返回true

  1. let arr = [1,2,3,4,5]
  2. let kArr = []
  3. function fun (e){return e < 4};
  4. console.log(arr.every(fun)); // false
  5. console.log(kArr.every(fun)); // true

find()

find()返回满足条件的第一个元素

  1. let arr = [1,2,3,4,5]
  2. let findArr = arr.find(e=>e>2)
  3. console.log(findArr);

findIndex()

findIndex()返回曼珠条件的1第一个元素的下标

  1. let arr = [1,2,3,4,5]
  2. let findIndexArr = arr.findIndex(e => e > 2);
  3. console.log(findIndexArr);

flat()

flat()方法,可以把多层嵌套的数组扁平化。

  1. let flatArr = [1,[2,[3,[4,[5,[6]]]]]];
  2. console.log(flatArr.flat(Infinity)); // [ 1, 2, 3, 4, 5, 6 ]

includes()

includes()判断数组中是否有指定的项存在,返回一个Boolean

  1. let arr = [1,2,3,4,5]
  2. console.log(arr.includes(2)); // true

indexOf()

indexOf()判断数组中是佛如有指定的项存在。存在返回该项下标,不存在返回-1。

  1. let arr = [1,2,3,4,5]
  2. console.log(arr.indexOf(2)); // 1
  3. console.log(arr.indexOf(8)); // -1

join()

join()把数组转为指定(传入值)分割的字符串。

  1. let arr = [1,2,3,4,5]
  2. console.log(arr.join(','));

keys()

keys()返回存在的

  1. let arr1 = [1,,,2]
  2. console.log(Object.keys(arr1));

values()

方法返回一个新的 Array Iterator 对象,该对象包含数组每个索引的值

  1. arr = ['a','b','c','d']
  2. for(k of arr.values()){
  3. console.log(k);
  4. // a
  5. // b
  6. // c
  7. // d
  8. }

pop()

pop()方法,删除尾部最后一项,返回该值。

  1. let arr = [1,2,3,4,5]
  2. console.log(arr.pop()); // 5
  3. console.log(arr); // [ 1, 2, 3, 4 ]

push()

push()方法,将一个或多个元素添加到数组的末尾,并且返回该数组的长度

  1. let pushArr = ['a','b']
  2. console.log(pushArr.push(6)); // 3
  3. console.log(pushArr); // [ 'a', 'b', 6 ]

shifu()

shift() 方法从数组中删除第一个元素,并返回被删除元素的值。

  1. let arr = [1,2,3,4,5]
  2. console.log(arr.shift()); // 1
  3. console.log(arr); // [ 2, 3, 4, 5 ]

unshift()

unshift()方法从数组前面增加有一个元素,并且返回改变后的数组长度。

  1. console.log(arr.unshift(6)); // 5
  2. console.log(arr); // [ 6, 2, 3, 4, 5]

slice()

slice()传入beginend来切割数组。浅拷贝一份新的数组,原数组不会改变。

  1. let arr = [1,2,3,4,5]
  2. console.log(arr.slice(2)); // [ 3, 4, 5 ]
  3. console.log(arr.slice(2,4)); // [ 3, 4 ]

reverse()

reverse()方法,翻转数组。

  1. let arr = [1,2,3,4,5]
  2. console.log(arr.reverse()); // [ 5, 4, 3, 2, 1 ]

some()

some()方法,数组中只有有一个条件满足就返回,返回一个Boolean值。

  1. arr = [1,2,3,4,5]
  2. let someArr = arr.some(e=>e>2)
  3. console.log(someArr);

sort()

sort()数组排序。

  1. arr = [13,1,6,12,14]
  2. let sortArr1 = arr.sort()
  3. console.log(sortArr1); // [ 1, 12, 13, 14, 6 ]
  4. let sortArr2 = arr.sort((a,b)=>a - b)
  5. console.log(sortArr2); // [ 1, 6, 12, 13, 14 ]

splice()

splice()删除、替换现有元素,并放回被修改的内容。此方法会修改原数组。

  • 参数一:从第几位开始删除,下标从0开始。
  • 参数二:要删除多少项。
  • 参数三:替换值。
  1. let arr = [1,2,3,4,5]
  2. console.log(arr.splice(2)); // 返回被删除的值[ 3, 4, 5 ]
  3. console.log(arr); // 剩余数组[ 1, 2 ]
  4. arr = [1,2,3,4,5]
  5. console.log(arr.splice(2,1)); // 返回被删除的值[ 3 ]
  6. console.log(arr); // 剩余数组[ 1, 2, 4, 5 ]
  7. arr = [1,2,3,4,5]
  8. console.log(arr.splice(2,1,'a')); // 返回删除的值[ 3 ]
  9. 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