zoukankan      html  css  js  c++  java
  • 前端对数组的基本操作函数

    一,slice

    arrayObject.slice(start,end):从已有的数组中返回选定的元素。

    操作:从原来的数组中选取元素。

    返回值:选定的元素重新组成的数组。

    注意:

    1,返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。

    2,start(必需)。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。

    3,end(可选)。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从start 到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。

    4,可用来复制数组,筛选需要的数组元素。

    二,push

    arrayObject.push(newelement1,newelement2,....,newelementX):push()方法可向数组的末尾添加一个或多个元素,并返回新的长度。

    操作:操作原数组末尾,直接在原数组的末尾进行元素添加。

    返回值:返回修改后的数组的新长度。

    注意:

    1,push() 方法可把它的参数顺序添加到 arrayObject 的尾部。

    2,它直接修改 arrayObject,而不是创建一个新的数组。

    3,push() 方法和 pop() 方法使用数组提供的先进后出栈的功能。

    三,unshift

    arrayObject.unshift(newelement1,newelement2,....,newelementX):nshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。

    操作:直接操作原数组的开头,将参数顺序的加入原数组的开始位置,并将后面的元素向后移动。

    返回值:返回修改后的原数组的新长度。

    注意:

    1,unshift() 方法不创建新的创建,而是直接修改原有的数组,该方法会改变数组的长度。

    2,unshift() 方法无法在 Internet Explorer 中正确地工作!

    四,pop

    arrayObject.pop():pop()方法用于删除数组的最后一个元素,原数组长度减一,并将删除的该元素作为返回值返回。

    操作:删除调用数组的最后一个元素,原数组长度减一,并返回删除的该元素。

    返回值:原数组被删除的元素值。

    注意:

    1,若原数组已经为空,则pop()不改变数组,并返回undefined值。

    2,pop直接操作原数组,原数组长度会改变。

    五,shift

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

    操作:删除原数组的第一个元素,并将该元素作返回值。

    返回值:原数组被删除的元素。

    注意:

    1,如果数组是空的,那么 shift() 方法将不进行任何操作,返回 undefined 值。

    2,该方法会改变数组的长度。

    六,concat

    arrayObject.concat(arrayX,arrayX,......,arrayX):将参数数组作为参数添加到调用数组中,添加的不是参数数组而是参数数组的元素,顺序添加。

    操作:不会改变原数组,会在原数组的副本中添加参数数组,并将添加后的原数组副本作为返回值。

    返回值:添加参数数组元素之后原数组副本作为返回值。

    注意:

    1,原数组不改变,只会在原数组的副本中添加参数数组,并作为返回值。

    2,参数可以是元素、多个元素、数组、多个数组。

    七,splice

    arrayObject.splice(index,howmany,item1,.....,itemX):删除(或者添加)从index开始的howmany个元素,用itemx来对删除的元素进行替换。

    操作:index(包含index)决定操作起始位置,删除或者是添加,当howmany为0则不是删除,则从index开始依次添加itemx。

    返回值:若是howmany不为0,则执行删除操作,splice函数返回值是删除的元素组成的数组。若是howmany为0,则返回值是空数组。

    八,reverse

    arrayObject.reverse():reverse() 方法用于颠倒数组中元素的顺序。

    操作:直接操作原数组的元素。

    返回值:整个原数组取反之后的原数组。

    注意:直接改变原数组,不会创建新数组。

    九,sort

    arrayObject.sort(sortby):sort() 方法用于对数组的元素进行排序。

    操作:sortby规定排序顺序,必须是函数。直接在原数组进行排序操作,不生成副本。

    返回值:操作后的原数组。

    注意:
    如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。
    如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下:
    若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。
    若 a 等于 b,则返回 0。
    若 a 大于 b,则返回一个大于 0 的值。

    例如:
    var A = [1,2,3,4,5];
    var fruits = A.sort(function(a,b){
    //return a - b; //从小到大
    return b-a; //从大到小
    })
    console.log(A);//[5,4,3,2,1]

    十,join

    arrayObject.join(separator):join() 方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的。

    操作:将原数组的元素组合成一个字符串输出,以某个分隔符作为连接,若是参数缺省,则分隔符默认为‘,’。

    返回值:将原数组以参数为分隔符组合输出为字符串,该字符串为返回值。

    注意:

    ES5新增的一些数组方法

    十一,

    业精于勤,荒于嬉,行成于思,毁于随~
  • 相关阅读:
    基础数据类型:列表
    基础数据类型(数字、布尔值、字符串)
    深浅copy
    集合
    逻辑运算
    poj 2287 Tian Ji -- The Horse Racing(贪心)
    hdu 1547 Bubble Shooter(深搜)
    hdu 1242 Rescue
    hdu 1175 连连看(深搜)
    hdu 2298 Toxophily(数学题)
  • 原文地址:https://www.cnblogs.com/yu-tang/p/12112421.html
Copyright © 2011-2022 走看看