zoukankan      html  css  js  c++  java
  • 复杂数据类型(数组)

    今天主要整理了数组的基础知识,数组在js中用到的地方很多,所以初学者的同鞋们一定要掌握,多看资料。而且大的案例中经常用到遍历数组
    数组
    1、数组是复杂的数据类型(对象类型)
    2、存储多个值会用到数组
    3、复杂类型数据都是用new来创建的
    4、 未赋值的项是undefined
     
    定义数组
     
    1、字面量定义
          a) var array=[]  //定义空数组
                    array[0]="爱国"
           b) var array=[1,2,3]
           c) var arrs=[3] 一个数字表示数组长度是1,值是3
    2、对象创建定义数组
        a) var arr1=new Array() //空数组
                   arr[2]="宝贝"  //空数组赋值
         b)var arr2=new Array( "关于","刘备","曹操")
         c)  var arr3=new Array(3) // 一个数字表示数组的长度, 都是未定义的空元素
       

    数组元素

    1、arr.length数组元素长度
    2、arr[0] 通过索引值获取元素 /赋值
    3、数组最开始的长度是0,每增加一个,arr.length自增(可以做索引)
    4、数组的长度可以作为数组中最后一个新添加元素的索引值
     
    数组的遍历
    数组和for循环一起使用绝配
     var arr=["","","","","",""];
        //遍历数组就是循环(获取)数组每一个值
        for(var i=0; i<arr.length; i++){
            //i代表数组的每一个元素
            console.log(arr[i]);
        }//

    遍历数组案例

     //把1-10之间所以的奇数,放到数组中
        //数组长度本身最开始是0,当每添加一个元素,数组自增1
        //变量j可以用arr.length代替,因为初始化值是0,
        var arr=[];
       // var j=0
        for(var i=1; i<=10; i++){
            if(i%2!==0){
                arr[arr.length]=i;
               // j++;
            }
        }
        console.log(arr);
       //1-10之间能被3整除的数字,存到数组中
        var arr=[];
        for(var i=1; i<=10; i++){
            if(i%3===0){
                arr[arr.length]=i;
            }
        }
        console.log(arr)
    //求一组数组所有数和的平均值
        var arr=[10,20,30];
        //计数器思想
        var sum=0;
        for(var i=0; i<arr.length; i++){
            sum+=arr[i];
        }
        console.log(sum);
        var avg=sum/arr.length;
        console.log(avg);
     //求数组中最大值
      var arr=[-10,-20,-30];
        //比较的数使用数组里面的,(最好是第一个或是最后一个,)
        var max=arr[0];//max=arr.length-1
        for( var i=1;i<arr.length; i++ ){ //可以少比较一次 让i=1
            if(arr[i]>max){
                //遍历数字,判断数组中每一项,如果比max大,赋值给max,
                max=arr[i];
            }
        }
        console.log(max);
     // 求一组数中的最大值和最小值,以及所在位置
        var arr=[10,-20,30,40];
        //定义最大值和最小值变量 还有他们的索引值变量
        var maxValue=arr[0];
        var minValue=arr[0];
        var maxIndex=0;
        var minIndex=0;
        //求最大值
        for(var i=1; i<arr.length; i++){
            if(arr[i]>maxValue){
                //把这个元素赋值给最大值,把对应的索引值付给minIndex
                maxValue=arr[i];
                maxIndex=i;
                //求最小值
            }else if(arr[i]< minValue){
                //把这个元素赋值给最大值,把对应的索引值付给minIndex
                minValue=arr[i];
                minIndex=i;
            }
        }
        console.log(maxValue);
        console.log(maxIndex);
        console.log(minValue);
        console.log(minIndex);
    //将字符串数组用|,或其他符合分割
        var arr=["吕超","赵云","典韦","关羽","马超","张飞"];
        //为了避免第一个名字前面|,把第一个名字从数组中拿出来,保存到变量sum里
        var sum=arr[0];
        var aa="|";
        for( var i=1; i<arr.length; i++){
            sum+=aa+arr[i];
        }
        console.log(sum)
      //翻转数组
    //思路:实现方法:1、定义一个新数组,把老数组中的元素从后往前添加到新数组中。
        var arr=["刘备","关羽","张飞","诸葛亮","马超","黄忠","姜维"];
            console.log(arr);
        var newArr=[];
    
        //复杂版
        for(var i=0; i<arr.length; i++){
            //用新数组的长度作为索引值。给定数组的最大索引值,然后减去i 因为i自增
            newArr[newArr.length]=arr[arr.length-1-i];
        }
        console.log(newArr);
    
        //简单版
        for(var j=arr.length-1; j>=0; j--){
            newArr[newArr.length]=arr[j];
        }
        console.log(newArr);
    //思路:实现方法;2、操作原数组,让原数组第一位和最后一位调换位置,以此类推。
        for( var i=0; i<arr.length/2; i++){
            //var temp=arr[i];
            arr[i]=arr[arr.length-1-i];
            //arr[ arr.length-1-i]=temp;
        }
        console.log(arr)
  • 相关阅读:
    Vue.js——60分钟组件快速入门(下篇)三
    ASP.NET Core 中的 ORM 之 Dapper
    .Net Core中Dapper的使用详解
    .NetCore与Vue
    Vue 导入文件import、路径@和.的区别
    Git常见命令
    JVM垃圾回收补充知识点
    Java虚拟机垃圾回收(三): 7种垃圾收集器(转载)
    Java虚拟机垃圾回收(二) :垃圾回收算法(转载)
    Java虚拟机垃圾回收:基础点(转载)
  • 原文地址:https://www.cnblogs.com/wdz1/p/7230349.html
Copyright © 2011-2022 走看看