• javascript学习day10——Array对象


    Array的方法   
    一、判断变量是不是数组
    1     var obj = [];
    2 //法一
    3     console.log(obj instanceof Array);
    4 //法二
    5     console.log(Array.isArray(obj));

    二、克隆数组

    1     var arr1 = ["a","b","c"];
    2     //将arr1复制到arr2里
    3     var arr2 = Array.from(arr1);
    4     console.log(arr2);

    三、合并两个或多个数组

    1 var arr1 = ["a","b","c"];
    2 var arr3 = ["d","e","f"];
    3 console.log(arr1.concat(arr2,arr3));

    四、检测数组里的每一个元素是否都通过了测试

        var arr4 = [1,2,3,4,5];
        // 元素的值:a           
        // 索引的值:b
        // 谁调用了这个方法:c
        var temp = arr4.every(function(a,b,c){
            return a>10;//false
            //数组中的每个元素的值都大于10,则返回true,否则为false
        });
        //应用:可以去判断工资啊价格啊什么的
    
        var arr5 = ["意思时123","黄金开采","东方不败","大话西游之降妖伏魔"];
        var temp2 = arr5.every(function(a){//可以省略不用用到的参数
            return a.length>4;
            //判断数组里每个元素的长度是否都大于4
        });
        console.log(temp2);//false

    五、创建一个包含所有通过提供的函数检测的元素的数组

    比如把arr5中所有满足长度大于4的元素包含到一个新的数组里

    1     var newArr = arr4.filter(function(ele1){
    2         return ele1 >3;
    3     });
    4     console.log(newArr);//[4, 5]
    5 
    6     var newarr = arr5.filter(function(ele){
    7         return ele.length>4;
    8     });
    9     console.log(newarr);//["意思时123", "大话西游之降妖伏魔"]

    六、

    push(), pop(), shifft(), unshift(), forEach(), indexOf(), join(), map(), reverse() 
           var arr4 = [1,2,3,4,5];
         var dele = arr4.pop();//[1,2,3,4] dele =5
    var arr4 = [1,2,3,4,5];
        arr4.push(900);//[1,2,3,4,5,900]
    var arr4 = [1,2,3,4,5];
        dele = arr4.shift();//[2,3,4,5] dele = 1
    var arr4 = [1,2,3,4,5];
        arr4.unshift(90);//[90,1,2,3,4,5]
      var b = [55,66,77,88,99];
        b.forEach(function(ele,index){
            console.log(index+"---"+ele);
        });
    
        /*
         *0---55
           1---66
           2---77
           3---88
           4---99
         */
        
        
         var m = b.indexOf(66);
        console.log(m);//1
    
        var str = b.join("|");
        console.log(str);//55|66|77|88|99
     1   var num = [4,64,9,25,16];
     2     //对num里面的每一个数进行开方运算
     3     var roots = num.map(Math.sqrt);
     4     console.log(roots);// [2, 8, 3, 5, 4]
     5     console.log(num.reverse());//[16, 25, 9, 64, 4]
     6     
     7     num.sort();//sort方法可能会不稳定
     8     //自己定义一个比较函数,将num里的数从小到大进行排序
     9     num.sort(function(a,b){
    10         if(a>b){
    11             return 1;
    12         } else if(a==b){
    13             return 0;
    14         } else {
    15             return -1;
    16         }
    17     });
    18     console.log(num);//[4, 9, 16, 25, 64]
          var tmpp = num.slice(2,4);//取出第2个到第3个位置的元素并存进新数组
           console.log(tmmp);//[16, 25]
     

    splice() 方法 可以用来替换,添加,删除

    1          num.splice(2,0,99999);//在索引为2的地方插入99999
    2          console.log(num);//[4, 9, 99999, 16, 25, 64]
    3          num.splice(2,1);//在索引为2的位置删除1项
    4          console.log(num);// [4, 9, 16, 25, 64]
    5          num.splice(2,1,99999);//在索引为2的地方替换为99999
    6          console.log(num);// [4, 9, 99999, 25, 64]
    7          num.splice(2,2,99999);//在索引为2的地方将2个位置替换为99999
    8          console.log(num);// [4, 9, 99999, 64]    
  • 相关阅读:
    【转】深入浅出单实例SINGLETON设计模式
    【转】bat等大公司常考java多线程面试题
    java递归逆置一个字符串
    求连续数组子序咧的最大和
    小程序new Date()).getMonth()拿到的月份比实际时间少一个月
    小程序云函数查询数据库时result一直为null
    小程序云开发使用where查询遇到的问题
    小程序运行报错: navigateTo:fail page "pages/navigate/navigate" is not found?
    在Thinkphp中使用AJAX实现无刷新分页
    MYSQL优化9大法!
  • 原文地址:https://www.cnblogs.com/xyishere/p/13776035.html
Copyright © 2020-2023  润新知