数组常用到的相关方法

32 阅读3分钟
  1. typeof  主要用来判断基本数据类型。 字符串,数字,布尔

  2. Instanceof:  要判断的数据 instanceof 构造原型

    最准确的判断数据类型的方法,Object.prototype.toString.call(数据)

数组常用方法

   1. Join: array.join(‘符号’).  把数组转为字符串,不改变原数组

   2. split: string.split(‘符号’)  方法用于把一个字符串分割成字符串数组。 不改变原始字符串。

提示:  如果把空字符串 ("") 用作 separator,那么 stringObject 中的每个字符之间都会被分割。

  1. slice : 截取/删除数组,不更改原数组

       Array.slice(‘开始截取的数组下标’,‘结束截取的数组下标,并且不包含’)

  1. concat: 数组拼接  array1.concat(arr2);  不更改原数组,返回拼接后的新数组

   5. unshift:  array.unshift(参数), 把参数添加到数组头部,改变原数组,此方法返回最新的数组长度为数字

   6. shift: 删除数组头部一个元素,改变原数组,此方法返回删除的那个元素

   7. reverse: 反转数组,更改原数组

   8. sort : 排序 sort((a,b) => { return a-b})

         默认 a<b 

          Return 数字   (<0 升序; >0 降序)

       更改原数组,返回当前更改数组

   9. pop: 删除数组尾部一个元素,改变原数组, 此方法返回删除的那个元素

   10. splice: 截取/ 删除数组。 3个参数,都是非必填的

          array.splice(‘截取的开始下标’,’截取的长度’,’填充替换的数组’)

        更改原数组,返回删除的数据数组。

  1. push: array.push(参数), 把参数添加到数据尾部,改变原数组,此方法返回最新的数组长度为数字

  

遍历数组的方法:

   1. forEach: 为数组里面每一项进行操作。没有返回值

   2.  Map 为数组里面每一项进行操作,并返回一个新数组。 有return 

   3. filter : 循环过滤符合条件的数组,返回一个新数组。 Return true 的时候该元素被返回

   4. find : 查找符合条件的元素返回,只会返回符合条件的第一个。return true的时候该元素被返回,如果没有符合条件的元素,则返回undefined

注意:  find() 对于空数组,函数是不会执行的。find() 并没有改变数组的原始值。

   5. findIndex : 查找符合条件的元素返回,只会返回符合条件的第一个元素位置。return true的时候该元素被返回下标。

findIndex() 方法为数组中的每个元素都调用一次函数执行:

  • 当数组中的元素在测试条件时返回 true 时, findIndex() 返回符合条件的元素的索引位置,之后的值不会再调用执行函数。
  • 如果没有符合条件的元素返回 -1

注意: findIndex() 对于空数组,函数是不会执行的。findIndex() 并没有改变数组的原始值。

  1. some : 方法用于检测数组中的元素是否满足指定条件。 有真则真,返回布尔

some() 方法会依次执行数组的每个元素:

  • 如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。
  • 如果没有满足条件的元素,则返回false。

注意: some() 不会对空数组进行检测。 some() 不会改变原始数组。

  1. every : 有假则假,返回布尔

every() 方法用于检测数组所有元素是否都符合指定条件。

如果数组中检测到有一个元素不满足,则整个表达式返回 false ,且剩余的元素不会再进行检测。

如果所有元素都满足条件,则返回 true。

注意: every() 不会对空数组进行检测。 every() 不会改变原始数组。

  1. reduce: 遍历 ,是数组的归并方法,与 forEach()、map()、filter()等迭代方法一样都会对数组每一项进行遍历,但是reduce() 可同时将前面数组项遍历产生的结果与当前遍历项进行运算,这一点是其他迭代方法无法企及的。