重拾JS-08-数组


目标:解决以下问题

  • 如何创建数组?

1.利用new创建数组

 var arr=new Array();

2.利用数组字面量创建数组

var arr=[1,2,'星野源',true]

  • 如何获取数组中的元素?

利用数组的索引(数组下标)

  var arr=[1,2,'星野源',true]
         console.log(arr[0]);
         console.log(arr[1]);
         console.log(arr[2]);

 

  • 对数组进行遍历操作
 //对数组进行遍历
        var arr=[1,2,'星野源',true]
        for(var i=0;i<arr.length;i++){
            console.log(arr[i]);
        }
        
   //求数组的和以及平均值
        var sum=0;
        var arr=[1,2,6,15]
        for(var i=0;i<arr.length;i++){
            sum+=arr[i];
        }
        console.log(sum);
        console.log(sum/arr.length);

      //求数组的最大值
        var arr=[2,6,1,77,52,25,7]
        var maxNum=arr[0];
        for(var i=1;i<arr.length;i++){
            // maxNum<arr[i]?maxNum=arr[i]:maxNum;
            if(maxNum<arr[i]){
                maxNum=arr[i]
            }
        }
        console.log(maxNum);

    //数组转换为字符串
       var arr=['red','green','blue','pink'];
       var str='';
       for(var i=0;i<arr.length;i++){
        str+=arr[i]+'|';
       }
       console.log(str);

 

  • 给数组新增一个元素

1.通过修改length长度来新增数组元素

//修改数组length来增加数组元素
         var arr=[1,2,'星野源',true]
         console.log(arr[0]);//输出1
        arr.length=5;
        console.log(arr[3],arr[4]);//输出true、undefined

 

2.通过修改数组下标(索引号)来新增数组元素

    //修改数组索引来增加数组元素
        var arr=[1,2,'星野源',true]
        arr[4]='新垣结衣';
        arr[5]=123;
        console.log(arr);

    //增加数组元素案例
        var arr=[];
        for(var i=0;i<10;i++){
            arr[i]=i+1;
        }
        console.log(arr);

案例1:筛选数组

  //筛选数组案例
        var arr=[2,0,6,1,77,0,52,0,25,7];
        var arr1=[];
        var j=0;
        for(var i=0;i<arr.length;i++){
            if(arr[i]>10){
                arr1[j]=arr[i];
                j++;
            }
        }
        console.log(arr1);

//筛选数组案例改进
       var arr=[2,0,6,1,77,0,52,0,25,7];
        var arr1=[];
        for(var i=0;i<arr.length;i++){
            if(arr[i]>10){
                arr1[arr.length]=arr[i];
            }
        }
        console.log(arr1);

案例2:翻转数组案例

  //翻转数组案例
        var arr=['red','green','blue','pink'];
        var arr1=[];
        for(var i=arr.length-1;i>=0;i--){
            arr1[arr1.length]=arr[i];
        }
        console.log(arr1);

 

  • 完成冒泡排序的案例
  //冒泡排序案例
        var arr=[2,5,4,9,13,8];
        var temp=0;
        for(var j=0;j<arr.length-1;j++){
            for(var i=0;i<arr.length-j;i++){
                if(arr[i]<arr[i+1]){
                    temp=arr[i+1];
                    arr[i+1]=arr[i];
                    arr[i]=temp;
                }
            }
        }
        console.log(arr);

 

上一篇:8.6数组使用中俩个常见的问题


下一篇:数组扁平化