阅读 23

【1】JS Array对象的方法总结(ES5 与 ES6) 一

1、ES5数组方法

    1.1、不改变原数组:

1.Array.isArray()  
    用来判断一个值是否为数组。它可以弥补typeof运算符的不足
2.valueOf() 
    返回数组本身
3.toString() 
    返回数组的字符串形式
4.pop() 
    用于删除数组的最后一个元素,并返回该元素。注意,该方法会改变原数组。
5.join() 
    以参数作为分隔符,将所有数组成员组成一个字符串返回。如果不提供参数,默认用逗号分隔。
6.concat() 
    用于多个数组的合并。它将新数组的成员,添加到原数组成员的后部,然后返回一个新数组,原数组不变。
7.slice() 
    用于提取原数组的一部分,返回一个新数组,原数组不变。
8.map() 
    对数组的所有成员依次调用一个函数,根据函数结果返回一个新数组。
9.forEach() 
    与map方法很相似,也是遍历数组的所有成员,执行某种操作,但是forEach方法一般不返回值,只用来操作数据。如果需要有返回值,一般使用map方法。
   forEach方法的参数与map方法一致,也是一个函数,数组的所有成员会依次执行该函数。它接受三个参数,分别是当前位置的值、当前位置的编号和整个数组。
10.filter() 
    filter方法的参数是一个函数,所有数组成员依次执行该函数,返回结果为true的成员组成一个新数组返回。该方法不会改变原数组。
11.some(),every()
  这两个方法类似“断言”(assert),用来判断数组成员是否符合某种条件。
  它们接受一个函数作为参数,所有数组成员依次执行该函数,返回一个布尔值。该函数接受三个参数,依次是当前位置的成员、当前位置的序号和整个数组。
  some方法是只要有一个数组成员的返回值是true,则整个some方法的返回值就是true,否则false。
12.reduce(),reduceRight()
    reduce方法和reduceRight方法依次处理数组的每个成员,最终累计为一个值。
    reduce:是从左到右处理(从第一个成员到最后一个成员)
    reduceRight:则是从右到左(从最后一个成员到第一个成员),其他完全一样。
13.indexOf(),lastIndexOf() 
  indexOf 方法返回给定元素在数组中第一次出现的位置,如果没有出现则返回-1。
  lastIndexOf 方法返回给定元素在数组中最后一次出现的位置,如果没有出现则返回-1。复制代码

    1.2、改变原数组:

1.push() 
    用于在数组的末端添加一个或多个元素,并返回添加新元素后的数组长度。注意,该方法会改变原数组。
2.shift() 
    用于删除数组的第一个元素,并返回该元素。注意,该方法会改变原数组。
3.unshift() 
    用于在数组的第一个位置添加元素,并返回添加新元素后的数组长度。注意,该方法会改变原数组。
4.reverse() 
    用于颠倒数组中元素的顺序,返回改变后的数组。注意,该方法将改变原数组。
5.splice() 
    用于删除原数组的一部分成员,并可以在被删除的位置添加入新的数组成员,返回值是被删除的元素。注意,该方法会改变原数组。
    splice的第一个参数是删除的起始位置,第二个参数是被删除的元素个数。如果后面还有更多的参数,则表示这些就是要被插入数组的新元素。
6.sort() 
    对数组成员进行排序,默认是按照字典顺序排序。排序后,原数组将被改变。 
复制代码

2、ES6数组方法

    2.1、不改变原数组:

1.扩展运算符
2.Array.from() 
    类数组转换成数组
3.Array.of() 
    方法用于将一组值,转换为数组。
4.find() 
    用于找出第一个符合条件的数组成员。它的参数是一个回调函数,所有数组成员依次执行该回调函数,直到找出第一个返回值为true的成员,然后返回该成员。如果没有符合条件的成员,则返回undefined。
5.findIndex() 
    与find方法非常类似,返回第一个符合条件的数组成员的位置,如果所有成员都不符合条件,则返回-1。
6.fill() 
    数组实例的方法使用给定值,填充一个数组。
7.entries(),keys() 和 values()  
  ES6 提供三个新的方法——entries(),keys()和values()——用于遍历数组。它们都返回一个遍历器对象(详见《Iterator》一章),可以用for...of循环进行遍历,唯一的区别是keys()是对键名的遍历、values()是对键值的遍历,entries()是对键值对的遍历。
8.includes() 
    数组实例的 方法返回一个布尔值,表示某个数组是否包含给定的值,与字符串的includes方法类似。ES2016 引入了该方法。
9.数组的空位,指数组的某一个位置没有任何值。比如,Array构造函数返回的数组都是空位。复制代码

    2.2、改变原数组:

1.copyWithin() 
    在当前数组内部,将指定位置的成员复制到其他位置(会覆盖原有成员),然后返回当前数组。也就是说,使用这个方法,会修改当前数组。复制代码


关注下面的标签,发现更多相似文章
评论