js数组方法总结

1、 concat

用于连接两个或者多个数组,然后返回一个新数组。

(1)var  arr1 = [1,2,3],
		arr2 = [4,5,6]
		arr3 = arr1.cancat(arr2)    // 合并成一个新数组   arr3 = [1,2,3,4,5,6]
(2)多个数组合并
		var arr1 = [1,2,3,4,5],
            arr2 = ['a','b','c','d','e'],
            arr3 = ['g','t','f'];
		var cont = arr1.concat(arr2,arr3);
        console.log(cont);

2、constructor

返回创建该对象的函数。也就是构造该对象的函数

console.log(Arrary.constructor == Function)     // true    因为他返回的是一个函数。

3、copyWithin (es6)

在当前数组内部,将指定位置的成员复制到其他位置,然后返回当前数组,也就是说这个方法会修改当前数组。

三个参数 :

  • target:复制到数组的那个位置
  • start:找那个值开始的位置
  • end: 找那个值结束的位置
var arr1 = [1,2,3,4,5]
var cont = arr1.copyWithin(0,2);
     console.log(arr1);   //[3,4,5,4,5]    0 是从第0位开始复制, 2 是第二位开始找的值  因为没有第三个参数   所有   2  就找到  3,4,5

var cont = arr1.copyWithin(0,2);
console.log(cont); // [3,2,3,4,5]  // 这个就找到 3  然后盖了第一位的1
负值代表倒数第几位。

4、entries

迭代返回数组的 ( 键 / 键值 )

var arr = ['a','b','c'];
var ent = arr.entries();
console.log(ent.next().value);  // [1,'a']
console.log(ent.next().value);  // [2,'b']
console.log(ent.next().value);  // [3,'c']

5、every

遍历数组 判断数组的每一项,如果都符合条件 则返回true。三个参数(键值,键,数组本身)

var arr = [1, 2, 3, 4, 5];
var arr2 = arr.every(function(x) {
 return x < 10;
}); 
console.log(arr2) //true

6、fill

填充 为数组填充某个属性值 接受三个参数 (要填充的值,开始填充的位置,结束的位置)

const arr1 = [1, 2, 3, 4, 5]
	arr1.fill(7) 
console.log(arr1);  [7,7,7,7,7]

7、filter

遍历数组 过滤数组的每一项内容。 返回 数组的每一项,数组的索引值,数组的本身。 返回数组是否匹配。

var arr1 = [1,2,3,4,5];
var cont = arr1.filter((x,y,z) => {
                return x<3
           });
console.log(cont);   // [1,2]

8、find

查找目标值。找到返回该元素,找不到返回 undefined // 只找满足条件的第一个。

 var arr1 = [1,2,3,4,5]
 var cont = arr1.find((value,index,arr) => {
      console.log(value);  // 1,2,3
      return value >= 3
  });

  console.log(cont);  // 3

9、forEach

遍历数组, 返回函数有三个参数 数组的每一项,数组的索引值,数组的本身。 没有返回值。

var cont = arr1.forEach((value,index,arr) => {
     console.log(value);
     // 遍历结果   然后操作
  });
cont  // undefined

10、includes

includes和 indexOf 一样 区别是
(1)indexOf 不能返回 NaN的结果。
(2)includes 找到元素返回 true / false

var cont = arr1.includes(6);
console.log(cont);  // false

11、indexOf

从数组的开头开始查找
接受两个参数 查找的项 从第几位开始查找

12、lastIndexOf

从数组的末尾开始查找。
接受两个参数 查找的项 从第几位开始查

13、join

将数组组装成字符串,该方法值接受一个参数,即分隔符。

14、keys

产生一个新的迭代器(Iterator),该迭代器返回数组的键值。

15、map

遍历数组 返回数组的每一项 三个参数

16、pop

将数组的末尾移除,并返回移除的项。

17、push

可以接收任意参数 ,将他们添加到数组的末尾。

18、reduce

迭代数组的值,从第一位开始 函数接受四个参数,叠加的值,当前的值,索引,数组本身。

var arr = [1,2,3];
var arr1 = arr.reduce((prv,cur,index,arr) => {
    console.log(prv+'--------'+cur);
    return prv + cur
})
console.log(arr1);  //6;

19、reduceRight

类似于reduce 迭代数组。从最后一位开始。

20、reverse

反转数组的顺序。

21、shift

删除数组的第一项,并且返回删除的值,如果空数组,则返回undefined

22、slice

返回一个新数组,新数组的项是原数组的下标开始到下标结束组成的数组。

23、some

遍历数组 判断数组的每一项,只要有符合条件的 就返回 true

24、sort

按照升序排序数组。

25、splice

很强大的方法,可以指定删除,插入,替换。

  • 删除:只需要添加前两个参数, 从第几位开始,删除几位。
  • 插入: 三个参数 插入的开始位置,0,插入的参数。
  • 替换: 三个参数 开始的位置 替换掉的几项, 替换加入的参数。

26、toLocaleString

将数组转化为字符串。

var arr = ['a','b','c'];
var ent = arr.toLocaleString('');
console.log(typeof ent); // String
console.log(ent); // a,b,c

27、unshift

在数组的首位添加元素。和 push 对应。

28、values

values和keys 类同,会产生一个Iterator 函数。返回 键值。

总结:

  • 产生新数组的有:
    filter, map, concat
  • 遍历的方法有:
    every, some,filter, find, forEachmap
  • 查找的方法有:
    includes, indexOf, lastIndexOf
  • 数组的操作:
    concatjoin, pop, push, shift, unshift, slice, splice, toLocaleString, fill,copyWidthin, reverse
  • 产生迭代函数:
    entries, keys,values
  • 返回函数本身的函数:
    constructor

你可能感兴趣的:(技术分享)