• 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
  • 相关阅读:
    BestCoder Round #61 (div.2)
    CCPC L(水)
    CCPC A(模拟)
    暗网是什么?如何进入暗网?
    社会工程学:关于一些信息收集的网站
    Flask开发系列之Web表单
    Flask开发系列之模板
    [转]Python 资源大全中文版
    python字符串/列表/字典互相转换
    Flask开发系列之Flask+redis实现IP代理池
  • 原文地址:https://www.cnblogs.com/xxyy1122/p/4763666.html
Copyright © 2020-2023  润新知