zoukankan      html  css  js  c++  java
  • JS 数组 API

    // 1) 添加元素移除元素相关【改变原值】
    
            //push(p1,p2,...);
                //入栈,在数组的最后添加一个元素. 参数:要入栈的元素. 返回值:数组长度
            var arr = [1,2,3,4,5];
            var result = arr.push("txt","tom","lucy");
            console.log(arr);    //新数组:    [1,2,3,4,5,"txt","tom","lucy"]
            console.log(result);    //新数组长度:    8
    
    
            //pop();    
                //出栈,从数组的最后取出一个元素. 参数:none. 返回值:     出栈的元素
            var arr = [1,2,3,4,5];
            var result = arr.pop();
            console.log(arr);    //新数组:    [1,2,3,4]
            console.log(result);    //取出的元素:    5
    
    
            //shift();
                //出队,将数组中第一个元素取出来. 参数:none. 返回值:出队的元素
            var arr = [1,2,3,4,5];
            var result = arr.shift();
            console.log(arr);    //新数组:    [2,3,4,5]
            console.log(result);    //取出的元素:    1
    
    
            //unshift(p1,p2,...);    
                //插队,将元素插入在数组的最前面. 参数:要插队的元素. 返回值:插队后队列的长度
            var arr = [1,2,3,4,5];
            var result = arr.unshift("txt","tom","lucy");
            console.log(arr);    //新数组:    ["txt","tom","lucy",1,2,3,4,5]
            console.log(result);    //新数组长度:    8
    
    
    //2)排序方法【改变原值】
    
            //sort();
                //按照字符在字符编码表中出现的位置进行排序
            var arr = [19,47,51,4,2,32,24,6];
            var result = arr.sort();
            console.log(arr);    //新数组     [19,2,24,32,4,47,51,6]
            console.log(result);    //返回值        [19,2,24,32,4,47,51,6]
    
    
            //sort(comparator);
                //comparator为一个比较器函数,函数可以接受两个值a,b;当a位于b之前的时候返回
            var arr = [19,47,51,4,2,32,24,6];
            console.log(arr);    //原数组        [19,47,51,4,2,32,24,6]
            var result = arr.sort(function(a,b){
                if(a<b){
                    return 1;
                }else{
                    return -1;
                }
            });
            console.log(arr);    //新数组        [51,47,32,24,19,6,4,2]
            console.log(result);    //返回值        [51,47,32,24,19,6,4,2]
    
    
    //3)序列化方法【不改变原值】
    
            //toString();
                //将数组转换为字符串,数组中的元素通过逗号连接
            var arr = [1,2,3,4,5];
            var result = arr.toString();
            console.log(arr);    //原数组        [1,2,3,4,5]
            console.log(typeof result);        //返回值类型     string
            console.log(result);    //返回值     1,2,3,4,5
    
    
            //join("v");
                //将数组转换为字符串,数组中的元素通过v连接
            var arr = [1,2,3,4,5];
            var result = arr.join("#");
            console.log(arr);    //原数组        [1,2,3,4,5]
            console.log(result);    //返回值     1#2#3#4#5
    
    
            //JSON.stringfy();
                //将数组转换为JSON字符串
            var result = JSON.stringify([1,2,3,4,5]);
            console.log(typeof result);        //返回值类型     string
            console.log(result);    //返回值     [1,2,3,4,5]
    
    
    //4)截取方法
    
            //concat();    【不改变原值】
                //将参数中的数组和当前数组合并为一个数组. 参数:多个数组. 返回值:合并后的数组
            var arr1 = [1,2,3];
            var arr2 = [4,5,6];
            var arr3 = [7,8,9];
            var result = arr1.concat(arr2,arr3);
            console.log(arr1);        //原数组     [1,2,3]
            console.log(arr2);        //原数组     [4,5,6]
            console.log(arr3);        //原数组     [7,8,9]
            console.log(result);    //返回值     [1,2,3,4,5,6,7,8,9]
    
    
            //slice(begin,end);    【不改变原值】
                //从当前数组中截取一个子数组并且范围. 参数: begin 起始位置;  end 结束位置. 返回值:截取到的子数组
            var arr = [1,2,3,4,5,6,7,8,9];
            var result = arr.slice(2,7);    //从索引为2的元素开始截取(7-2)个元素
            console.log(arr);        //原数组     [1,2,3,4,5,6,7,8,9]
            console.log(result);        //返回值     [3,4,5,6,7]
    
    
            //splice(bengin,delete,[p1,p2,...]);    【改变原值】
                //从数组中删除、插入、更新元素. 参数:begin 起始位置(删除,插入); delete 删除的个数; p1,p2,... 插入的值. 返回值:删除的元素组成的数组
            var arr = [1,2,3,4,5];
            var result = arr.splice(1,2,"txt","tom","lucy");
            console.log(result);    //删除的元素:        [2,3]
            console.log(arr);    //删除后插入形成的新数组:         [1,"txt","tom","lucy",4,5]
    
    
    //5)迭代方法
            
            //forEach(function(item,index,arr){})
                //遍历当前数组.  参数:function(item,index,arr){}.  每次遍历一次,这个匿名函数就会被调用一次,forEach将当前遍历的元素,索引,当前数组当做实参传递给这个匿名函数
            var arr = [1,2,3,4,5];
            var result = arr.forEach(function(a,b,c){
                console.log(a);        //数组的项    1 /n    2 /n    3 /n    4 /n    5
                console.log(b);        //数组的索引        0 /n    1 /n    2 /n    3 /n    4
                console.log(c);        //数组本身    [1,2,3,4,5] /n    [1,2,3,4,5] /n    [1,2,3,4,5] /n    [1,2,3,4,5] /n    [1,2,3,4,5]
            });
            console.log(result);    //返回值        undefined
    
    
            //every(function(item,index,arr){})
                //判断数组中所有的元素是否满足回调函数中给定的条件.  参数:function(item,index,arr){}.  当每次回调函数返回值为true,every方法的结果为true,当回调函数返回值为false,every方法的结果就为false
            var arr = [1,2,3,4,5];
            var result = arr.every(function(item,index,arr){
                return item >3;
            });
            console.log(result);    //返回值        false
    
    
            //some(function(item,index,arr){})
                //判断数组中是否有满足条件的元素.  参数:function(item,index,arr){}.  当回调函数返回true,some方法的结果就为true,当每次回调函数返回false,some方法的结果才为falses
            var arr = [1,2,3,4,5];
            var result = arr.some(function(item,index,arr){
                return item >3;
            });
            console.log(result);    //返回值        true
    
    
            //filter(function(item,index,arr){})
                //参数:function(item,index,arr){}.  当回调函数返回true,当前元素就会被添加到返回值数组中.  返回值:数组
            var arr = [1,2,3,4,5];
            var result = arr.filter(function(item,index,arr){
                return item >3;
            });
            console.log(result);    //返回值        [4,5]
    
    
            //map(function(item,index,arr){})
                //参数:function(item,index,arr){}.  回调函数可以返回任意类型的值,这些值都会被添加到map方法的返回值数组中.  返回值:数组
            var arr = [
                {name:"tom",age:13},
                {name:"lucy",age:18},
                {name:"leilei",age:16}
            ];
            var result = arr.map(function(item){
                // return item.age;
                return item.name;
            });
            console.log(result);    //返回值        /* [13,18,16] */    ["tom","lucy","leilei"]
    
    
    //6)查找方法
    
            //indexOf();
                //查找元素在数组中的位置.  参数:查找元素.  返回值:元素对应的索引.
            var arr = [1,2,3,4,5];
            var result = arr.indexOf(4);
            console.log(result);    //返回值        3
    
    
            //lastlndexOf();
                //查找元素在数组中的位置.  参数:查找元素.  返回值:元素对应的索引.
            var arr = [1,2,3,4,5];
            var result = arr.lastIndexOf(1);
            console.log(result);    //返回值        0
  • 相关阅读:
    MYSQL中delete删除多表数据
    Docker核心实现技术 (命名空间 & 控制组 & 联合文件系统 & Linux网络虚拟化支持)
    Using VNCserver + GUI application + Virtual Display in Docker container
    Xvfb or X virtual framebuffer
    noVNC: HTML5 VNC Client
    Docker GUI调研
    Fedora 26
    SIM卡将逐渐消失,eSIM卡的风口已来?
    Capturing Wireless LAN Packets in Monitor Mode with iw
    connect two WiFi simultaneously
  • 原文地址:https://www.cnblogs.com/lidyfamily/p/11422221.html
Copyright © 2011-2022 走看看