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]    
原文地址:https://www.cnblogs.com/xyishere/p/13776035.html