zoukankan      html  css  js  c++  java
  • JS基础知识梳理---Array对象

    A:数组的创建

    var arrA = new Array();
    var arrB = [];

    B:数组的属性 length

    var arr = [1,2,3,4,5,6];
    console.log(arr.length);//6

    C:数组转换成字符串,toString(),join();

    var arr = [1,2,3,4,5];
    console.log( arr.toString() );//1,2,3,4,5 在默认情况下会用逗号分隔
    console.log( arr.join("a") );//1a2a3a4a5 指定分隔字符

    D:数组的栈方法(后进先出),推入一项push(),取出最后一项pop();

    var arr = [1,2,3,4,5];
    arr.push("abc");
    console.log( arr );//[1, 2, 3, 4, 5, "abc"]
    arr.pop();
    arr.pop();
    console.log( arr );//[1, 2, 3, 4]

    E:队列方法(先进先出),推入unshift(),取出shift();

    var arr = [1,2,3,4,5];
    arr.unshift("abc");
    console.log( arr );//["abc", 1, 2, 3, 4, 5]
    arr.shift();
    arr.shift();
    console.log( arr );//[2, 3, 4, 5]

    F:数组排序,reverse()反转数组,sort()升序,可传入一个函数;

        var arr = [1,3,20,4,15];
        arr.reverse();
        console.log(arr);//[15, 4, 20, 3, 1] 反转位置
        arr.sort();
        console.log(arr);//[1, 15, 20, 3, 4] 升序排列
    
        arr.sort(compare);
        console.log(arr);//[1, 3, 4, 15, 20]
    
        function compare (valueA,valueB) {//-1,位置提前一位 1位置后退一位 0位置不变
            if( valueA < valueB ){//升序 < ,降序 >
                return -1;
            }else if( valueA > valueB ){
                return 1;
            }else{
                return 0;
            }
        }

    G:数组分割slice();用法和字符串中的slice是一样的

    var arr = [1,3,20,4,15];
    console.log(arr.slice(1));//[3, 20, 4, 15]
    console.log(arr.slice(1,3));//[3, 20]

    H:数组的删除,插入和替换,splice();

        var arr = [1,3,20,4,15];
        
        //删除,传入两个值,开始删除的角标,删除几项
        arr.splice(1,2);
        console.log(arr);//[1, 4, 15]
        
        //插入,传入三个或者多个参数,开始位置,要删除的个数,要插入的项
        arr.splice(1,0,'abc','def','g');
        console.log(arr);//[1, "abc", "def", "g", 4, 15]
        
        //替换,传入三个或者多个参数,起始位置,要删除的项,要插入的项
        arr.splice(1,2,'z','w','q','u');
        console.log(arr);//[1, "z", "w", "q", "u", "g", 4, 15]

    I:位置方法indexOf(),只有IE9+,firefox2+,chrome,Opera9.5+,Safari3+支持

    var arr = [1,3,2,3,7,2,10];
    //穿入一个值,返回这个值第一次出现的位置
    console.log(arr.indexOf(2));//2
    
    //穿入两个个值,第一个值为目标值,第二个是开始寻找的位置,返回这个值在寻找位置后第一次出现的位置
    console.log(arr.indexOf(2,3));//5

    J:数组中的最大值和最小值

    var arr = [1,3,2,3,7,2,10];
    //最大值
    console.log( Math.max.apply(null,arr) );//10
    //最小值
    console.log( Math.min.apply(null,arr) );//1
  • 相关阅读:
    Id_Name
    注入类型(Injection Type)
    搭建 Spring 2.5.6 开发环境
    模拟Spring框架
    AJAX 学习笔记 2017_05_04
    Gson 转换hibernate级联对象出现StackOverFlow(堆栈溢出)问题
    页面左侧可收缩菜单案例
    struts1.3.10 和 hibernate 3.3.2 一起加载时 出现javax.servlet.ServletException: java.lang.NoSuchMethodError: antlr.collections.A 错误
    1.21 Java基础总结 数组知识
    1.20 Java基础总结 输入数据类型判断 Java低耦合原则 for嵌套思路
  • 原文地址:https://www.cnblogs.com/xxyy1122/p/4763666.html
Copyright © 2011-2022 走看看