美文网首页
js 数组操作探究

js 数组操作探究

作者: 淡然7698 | 来源:发表于2018-08-02 18:08 被阅读14次

有空闲时间了, 深入的研究一下js 中的数组方法

js中的数组方法

首先是会改变原数组的方法:

  1. shift unshift

shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值

unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度

array.shift()
array.unshift(item1,item2, ..., itemX)
  1. pop push

pop()方法从数组中删除最后一个元素,并返回该元素的值。

push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。
注意: 新元素将添加在数组的末尾。

array.pop()
array.push(item1, item2, ..., itemX)
  1. reverse

reverse()方法颠倒数组中元素的位置,并返回该数组的引用。

array.reverse()
  1. sort

sort() 方法用于对数组的元素进行排序。返回排序后的数组。原数组已经被排序后的数组代替。
排序顺序可以是字母或数字,并按升序或降序。默认排序顺序为按字母升序。
ps:sort比较复杂 下面附上mdn的文档
MDN 文档:Array.prototype.sort()

array.sort(sortfunction)
  1. splice

然后是不改变原数组的方法

  1. concat

concat() 方法用于连接两个或多个数组。该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。

array1.concat(array2,array3,...,arrayX)
  1. join

join()方法将一个数组(或一个类数组对象)的所有元素连接成一个字符串 并返回这个字符串。
元素是通过指定的分隔符进行分隔的,且不会改变原数组.

array.join(separator)
  1. slice

slice() 方法可从已有的数组中返回选定的元素。
slice()方法可提取字符串的某个部分,并以新的字符串返回被提取的部分。
arr.slice()或者arr.slice(0) 将返回一个浅复制了原数组中的元素的一个新数组。且原始数组不会被修改。

array.slice(start, end)
  1. map fillter forEach some every reduce (不改变原数组,不对空数组操作)

map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值
map() 方法按照原始数组元素顺序依次处理元素
注意: map() 不会对空数组进行检测

array.map(function(currentValue,index,arr), thisValue)

filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
注意: filter() 不会对空数组进行检测。

array.filter(function(currentValue,index,arr), thisValue)

forEach() 方法用于调用数组的每个元素,并将元素传递给回调函数。
注意: forEach() 对于空数组是不会执行回调函数的。

array.forEach(function(currentValue, index, arr), thisValue)

reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。
reduce() 可以作为一个高阶函数,用于函数的 compose。
注意: reduce() 对于空数组是不会执行回调函数的。

array.reduce(function(total, currentValue, currentIndex, arr), initialValue)

some() 方法用于检测数组中的元素是否满足指定条件(函数提供)。
some() 方法会依次执行数组的每个元素:
如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。
如果没有满足条件的元素,则返回false。
注意: some() 不会对空数组进行检测。

array.some(function(currentValue,index,arr),thisValue)

every() 方法用于检测数组所有元素是否都符合指定条件(通过函数提供)
every() 方法使用指定函数检测数组中的所有元素:
如果数组中检测到有一个元素不满足,则整个表达式返回 false ,且剩余的元素不会再进行检测。
如果所有元素都满足条件,则返回 true。
注意: every() 不会对空数组进行检测。

array.every(function(currentValue,index,arr), thisValue)

相关文章

  • js 数组操作探究

    有空闲时间了, 深入的研究一下js 中的数组方法 js中的数组方法 首先是会改变原数组的方法: shift un...

  • js笔记

    js数组 删除某个元素 js数组是否含有某个元素 判断value为undefined cookie操作

  • js基础了解

    js数组常用遍历方法使用: js数组常用操作方法使用: 基本逻辑运算: 基本字符串操作方法:

  • JS jsonArray操作

    JS jsonArray操作 js对数组对象的操作以及方法的使用 如何声明创建一个数组对象:var arr = n...

  • JS对象 & JSON & JS数组操作

    JS对象 & JSON & JS数组操作 JSON 格式(JavaScript Object Notation 的...

  • js对象数组操作 数组操作

    var numbers = [1, 2, 3];var newNumbers1 = numbers.map(fun...

  • JS数组操作

    splice 用于一次性解决数组添加、删除(这两种方法一结合就可以达到替换效果),方法有三个参数 开始索引 删除元...

  • JS数组操作

    1.栈方法 push()和pop() 后入先出 push():末尾追加 pop():末尾弹出 2.队列方法 先入先...

  • js 数组操作

    遍历删除元素: 遍历数组:for循环遍历: forEach遍历:

  • js数组操作

    一、改变原数组的方法 a.reverse() 将数组逆序,会修改原数组 a.sort 对数组进行排序, 需要传入自...

网友评论

      本文标题:js 数组操作探究

      本文链接:https://www.haomeiwen.com/subject/reysvftx.html