美文网首页
红宝书之数组的方法

红宝书之数组的方法

作者: 楠楠_c811 | 来源:发表于2019-01-01 21:13 被阅读8次
    数组的栈方法

    栈是一种后进先出的数据结构,最新添加的项被最早移除
    push() 向数组后面插入元素
    pop() 删除数组最后一项

    数组的队列方法

    队列是先进先出,在列表的末尾添加项,从列表的前端移除项
    shift() 删除数组第一项
    unshift() 向数组前面插入元素

    数组的排序方法(返回重排序之后的数组)

    reverse() 翻转数组
    sort() 数组排序 接收比较函数,也可以得到降序排列

    数组的迭代方法(遍历)

    每个方法都接收两个参数:要在每一项上运行的函数和(可选的)运行该函数的作用域对象 - 影响this值。
    传入这些方法中的函数会接收三个参数,数组项的值,该项在数组中的位置,数组对象本身。
    every()
    filter()
    forEach()
    map()
    some()

    数组的操作方法(不会改变原数组,而是返回新数组)

    concat()
    slice()
    splice() 删除,插入,替换数组

    数组的位置方法

    indexOf() 从前向后查找
    lastindexOf() 从后向前查找

    数组的归并方法

    reduce() 从数组第一项开始,遍历到最后
    reduceRight() 从数组最后一项开始,便利到最后

    数组的其他方法

    jion() 将数组转换为字符串

    具体方法用处:
    push() 向数组后面追加元素

    特点:会改变原数组,带回的返回值是数组的新长度

    unshift() 向数组前面插入元素

    特点:会改变原数组,带回的返回值是数组的新长度,IE6、7不支持

    pop() 删除数组的最后一项

    特点:会改变原数组,写一个删除数组的最后一项,写两个删除数组的最后两项,返回值为被删除的元素

    shift() 删除数组的第一项

    特点:会改变原数组,写一个删除第一项,写两个删除前两项,返回值为被删除的元素

    扩展应用

    unshift(pop()) // 将删除的最后一项插入到数组的最前面,写几次插入几次。
    push(shift()) // 将删除的第一项插入到数组的最后面,写几次插入几次。

    jion() 连接符

    通过这个连接符把数组转换为 字符串,返回值为string类型。

    reverse() 翻转数组

    用于颠倒数组中元素的排序,返回值是一个数组。

    sort() 数组排序

    默认从小到大进行排序,默认是以字符串的编码进行排序,而不是以数字大小。它会改变原数组。
    需要注意的是它可以接收一个比较函数作为参数。
    如果需要它按照数值大小从小到大升序排列,格式为:
    arr.sort(function(a,b){return a-b})
    从大到小降序排列为:
    arr.sort(function(a,b){return b-a})

    排序原理是从大到小排序,拿到数组中的两个值,如果前一个值大于后一个值,不交换位置,如果前一个值小于后一个值,就交换位置。

    some() 测试数组

    测试数组中的某些元素是否通过由提供的函数实现的测试,返回布尔值。

    find()

    返回数组中满则测试条件的第一个值,如果没有符合条件的,就返回undefined。

    every()

    测试数组所有元素是否通过了指定函数的测试,,返回值为布尔值。

    filter()

    创建一个新数组,包含通过提供函数测试的所有元素。

    map()

    创建一个新数组,结果是数组中的每个元素都调用一个提供的函数后返回的结果。

    findIndex()

    返回数组中满足提供的测试函数的第一个值的下标,如果没有符合的值,就返回-1。

    concat()

    将数组和后面参数里的数组拼接起来,返回一个新数组。
    格式:arr.concat(arr1,arr2,arr3)

    slice()

    从已有数组中返回选定的元素。
    arrayObject.slice(start,end)
    start : 必传参数,规定从何处开始选取,如果是负数,从数组尾部开始算起。
    end:可传可不传,规定从何处结束选取,是数组片段结束时的数组下标。

    indexOf()

    从数组的开头向后查找。
    indexOf(searchValue ,startIndex)
    searchValue:必传,要查找的项
    startIndex:可选,起点位置的索引
    返回值为查找的项在数组中的位置,类型为umber,没有找到的话就返回-1。

    lastIndexOf()

    lastIndexOf(searchValue ,startIndex)
    从数组的末尾开始向前查找。
    searchValue:必传,要查找的项。
    startIndex:可选,起点位置的索引
    返回值是要查找的项在数组中的位置,类型为number,没有找到就返回-1。

    相关文章

      网友评论

          本文标题:红宝书之数组的方法

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