zoukankan      html  css  js  c++  java
  • JavaScript数组方法大全(第一篇)

    数组方法大全(第一篇)

    注意:第一次写博客有点小紧张,如有错误欢迎指出,如有雷同纯属巧合,本次总结参考书籍JavaScript权威指南,有兴趣的小伙伴可以去翻阅一下哦

    join()方法

    该方法是将数组内的所有元素转化为字符串并拼接在一起,最后返回生成的字符串。可以指定一个可选的字符串,来分隔数组得各个元素,默认使用 “,” 相隔

    例:

    var arr  = [1,2,3];
    arr.join();     ==> 输出'1,2,3'
    arr.join(" ")   ==> 输出'1 2 3'
    arr.join("")    ==> 输出'123'
    
    //此时再次打印arr
    console.log(arr);   ==> 输出[1,2,3]
    
    

    reverse()方法

    该方法是将数组中的元素颠倒顺序,返回逆向数组

    例:

    var arr = [1,4,3];
    arr.reverse();  ==> 输出[3,4,1]
    
    //此时再次打印arr
    console.log(arr);   ==> 输出[3,4,1]
    
    

    sort()方法

    该方法是将数组中的元素排序,返回排序后的结果,默认是按字母表顺序进行排序(如有必要将转化为字符串进行比较),如果数组中带有undefined元素,则它们会被排到数组尾部。可以传递一个函数,该函数决定了它的两个参数在排好序的数组中的先后顺序,如果函数的返回值小于0,则第一个参数就在前面,反之,第一个参数就在后面,假设两个值相等,则就返回0

    例:

    var arr = ['abc','cfg','1',undefined]
    arr.sort();     ==> 输出["1", "abc", "cfg", undefined]
    
    var arr1 = [2,5,3,7,6];
    //返回值小于0,从小到大进行排列
    arr1.sort(function (a,b) {return a - b});   ==> 输出[2, 3, 5, 6, 7]
    //返回值大于0,从大到小进行排列
    arr1.sort(function (a,b) {return b - a});   ==>输出[7, 6, 5, 3, 2]
    
    //此时输出arr1
    console.log(arr1);  ==>输出[7, 6, 5, 3, 2]
    

    concat方法

    该方法会将原数组和传进来的参数拼接成一个新的数组并返回,不修改原数组,如果传进来的参数为数组,则会将数组里的每一项与原数组拼接

    例:

    var arr = [1,3];
    arr.concat(5,4,[6,7,[8,9]],{s:'1'});    ==> 输出[1,3,5,4,6,7,[8,9],{s:'1'}]
    
    //此时输出arr
    console.log(arr);   ==>输出[1,3]
    

    slice(start,end)方法

    该方法返回指定数组的一个片段或者子数组,最多可以传递两个参数,当只传递一个参数时,表示从指定起始位置,一直到最后,返回包含起始位置的数组,如果传递两位,返回包含起始位置,但不包含结束位置的数组,如果传递负数,表示结束位置为倒数第几位,此方法不改变原数组

    例:
    var arr = [1,2,3,4];
    arr.slice(0,2);     ==> 输出[1,2]
    arr.slice(1);       ==> 输出[2,3,4]
    arr.slice(-1,-3);   ==> 输出[]
    arr.slice(-3,-2);   ==> 输出[2]
    arr.slice(1,-1);    ==> 输出[2,3]
    
    //此时输出arr
    console.log(arr)    ==> 输出[1,2,3,4]
    

    splice()方法

    该方法可以插入或者删除数组中的元素,里面可以传参数,第一个参数代表插入或删除的起始位置,第二个参数是指定删除元素的个数,不传就代表从起始点到数组末尾的元素都将被删除,紧跟其后的参数都是要插入数组中的元素,记住它的返回值是由删除的元素组成的数组,它会修改原数组

    例:

    var arr = [1,2,3,4];
    var a = arr.splice(2);  ==> 输出a的值为[3,4],此时arr的值为[1,2]
    
    //上下对应的是不同的方式运行的结果
    
    var a = arr.splice(1,2);    ==>输出a的值为[2,3],此时arr的值为[1,4]
    
    var a = arr.splice(1,2,5,6);    ==>输出a的值为[2,3],此时arr的值为[1,5,6,4]
    
    var a = arr.splice(1,2,[5,6]);  ==>输出a的值为[2,3],此时arr的值为[1,[5,6],4]
    //该方法区别于concat,它会把指定插入的什么,就会插入什么,不会做出改变
    

    push()方法,pop()方法

    1. push方法在数组的尾部添加一个或者多个元素,返回的是数组的新的长度

    例:
    var arr = [1,2];
    var a = arr.push([],{},3,[1,2],{s:'haha'}); ==>输出a的值为6
    
    //原数组arr为[1,2,[],{},[1,2],{s:'haha'}]
    

    2. pop方法是删除数组的最后一个元素,返回的是删除的值

    例:
    var arr = [1,2,3];
    var a = arr.pop();  ==>输出a的值为3,原数组arr的值为[1,2]
    
    //pop里面传参数是没有用的,返回的都是数组最后一位
    

    unshift()方法、shift()方法

    1. unshift()方法,是在数组的最前面插入指定元素,返回新数组的长度

    var arr = [1,2,3];
    var a = arr.unshift(4,5,6); ==>输出a的值6,原数组arr为[4,5,6,1,2,3]
    
    

    2. shift()方法,是删除数组第一位元素,返回删除的值

    var arr = [1,2,3];
    var a = arr.shift();    ==>输出a的值为1,原数组arr为[2,3]
    
    //shift方法里面传参没有什么用,返回的都是数组的第一位
    

    toString()方法、toLocaleString()方法

    1. toString()方法将其数组中的每个元素转化为字符串,必要时将调用元素的toString方法

    注意:输出不包括方括号或其它任何形式的包裹数组值得分隔符

    var arr = ['a',1,[2,3],[],{},{s:'hello'}];
    var a = arr.toString();
    //输出a的值为"a,1,2,3,,[object Object],[object Object]"
    
    

    2. toLocaleString()方法,这里就不做过多介绍,详情点这里

    总结:

    • 会修改原数组的值方法有 push(),pop(),unshift(),shift(),splice()

    • 会修改原数组的顺序的有reverse()(反转),sort()(排序)

  • 相关阅读:
    Android 70道面试题汇总不再愁面试
    TOMCAT用Https替换Http的方法
    Struts2+Spring3+Hibernate3配置全过程
    javac 无效标签
    hibernate
    数据库命令行启动
    Tomcat检测程序
    SQL
    Unsupported major.minor version 49.0的错误解决
    ImportError: No module named pysqlite2
  • 原文地址:https://www.cnblogs.com/fanzhikang/p/11336966.html
Copyright © 2011-2022 走看看