数组

100 阅读3分钟

数组

数组是什么

数组(Array)是一种可以按顺序保存数据的数据类型 为什么要数组? 思考:如果我想保存一个班里5个人的姓名怎么办? 如果有多个数据可以用数组保存起来

  1. 数组的声明语法

1648831558500

例:1648831576895

  • 数组是按顺序保存,所以每个数据都有自己的编号
  • 计算机中的编号从0开始,所以小明的编号为0,小刚编号为1,以此类推
  • 在数组中,数据的编号也叫索引或下标
  • 数组可以存储任意类型的数据(建议放同一类型的数据)

通俗的讲: 数组(Array)是一种可以按顺序保存数据的数据类型 可以放多个数据 方便我们使用

一般的话: 一般配合循环一起使用

声明数组并且能够获取里面的数据

取值语法1648831839241

例:1648831856522

通过下标取数据 取出来是什么类型的,就根据这种类型特点来访问

数组的属性

下标:数组中数据的编号

数组的长度:数组中数据的个数,通过数组的length属性获得

1648832139755

例如let car=['保时捷','阿斯顿马丁','法拉利','五菱宏光']
     car[0]  //保时捷
     car[1]  //阿斯顿马丁

遍历输出数组里面的元素

遍历数组: 用循环把数组中每个元素都访问到,一般会用for循环遍历

语法:1648832338257

1648832365247

例:

例如:let car=['保时捷','阿斯顿马丁','法拉利','五菱宏光']
    for (let i = 0; index < car.length; i++) {
        document.write(car[i]);
        
    }
<script>
        let fruits=['苹果','香蕉','西瓜','哈密瓜'];

        //fruits.length 指的是数组的长度
        for (let i= 0; i<fruits.length; i++) {
           document.write(fruits[i]) 
            
        }
        //小结 我们使用数组做for循环的时候
        // 1. for循环中的初始值的声明(let i=0);因为数组是从 0 1 2 3 开始排序的
        // 2. 第二个循环条件  for 循环中的条件 是i要<数组的长度 
    </script>

数组求和案例

需求:求数组 [2,6,1,7, 4] 里面所有元素的和以及平均值

分析: ①:声明一个求和变量 sum。 ②:遍历这个数组,把里面每个数组元素加到 sum 里面。 ③:用求和变量 sum 除以数组的长度就可以得到数组的平均值。

<script>
        //需求 求数组[2,6,1,7,4]里面元素的和以及平均值
        //先把数组遍历出来 再求和
        let gross=0;
        let number=[2,6,1,7,4]
        for (let i= 0; i< number.length; i++) {
        //    document.write(number[i]) //先看看我们自己写的数组是否能成功遍历 
        //再取消 因为是求和 这一步不需要直接打印出来 需要把和输出打印
            gross=gross+number[i]
        }
        document.write(gross)

        // 注意求和还是你一定要声明一个不影响计算结果的变量
    </script>

03-数组求平均值

<script>
        //求数组[2,6,1,7,4]里面元素的平均值 那就把总值除以数组个数
        let maxmax=0;
        let max=0;
        let gross=[2,6,1,7,4]
        for (let i= 0; i< gross.length; i++) {
           max=max+gross[i];
            maxmax=max/gross.length
        }
        document.write(maxmax)
        //首先遍历数组  再利用for'循环 求值 再求职之前声明个变量容器来存储五个数的总和
        //总求求出来后 是存放在max里面的 当然我们需要的是求平均数 
        //再声明一个为0的变量 来存放平均数  把max这个总求除以数组的长度就可以了 
    </script>

04-求数组中的最大值

<script>
        //需求 求数组中[2,6,1,77,52,25,7]的最大值 和最小值
        
        let aarr=[2,6,1,77,52,25,7]
        let max=aarr[0]
        for (let i = 0; i< aarr.length; i++) {
            //此段代码的意识是 如果aarr大于max 那就赋值给max  最终输出max结果 就是最大值
            if(aarr[i]>max){
                max=aarr[i]
            }           
    
        }
        document.write(max)
    </script>

05-求数组中的最小值

<script>
        //需求 求数组中[2,6,1,77,52,25,7]的最小值
        let min=arr[i];
        let aarr=[[2,6,1,77,52,25,7]]
        for (let i = 0; i < aarr.length; i++) {
            if(min<aarr[i]){
                min=aarr[i]
            }
            
        }
        document.write(min)
    </script>

操作数组

数组本质是数据集合, 操作数据无非就是 增 删 改 查 语法:

1648833090691

  1. 数组增加新的数据

数组.push() 方法将一个或多个元素添加到数组的末尾,并返回该数组的新长度

1648833274905

例如:1648833291119

-数组-push的应用

<script>
        let fruits=['苹果','香蕉','梨子']
        fruits.push('草莓')
        document.write(fruits)
    </script>

-数组-push的小案例

<script>
        //接受用户输入的4个同学的名字 组成一个数组
        let name=[];
        for (let i = 0; i <=4; i++) {
           let name2=prompt('请输入你同学的姓名') ;
            name.push(name2)
        }
        document.write(name)
    </script>

arr.unshift(新增的内容) 方法将一个或多个元素添加到数组的开头,并返回该数组的新长度

语法:

1648833454718

例如:1648833474906

代码示例:

<script>
        //在数组最前 添加
        let aarr=['苹果','香蕉','梨子']
        aarr.unshift('奥特曼')
        document.write(aarr)
    </script>

-获取不等于0数组元素

<script>
       // 需求 获取一个新数组 新的数组 不能带上0 [5,0,6,8,0,15,88,0]  
       let aarr=[5,0,6,8,0,15,88,0];
       let newAarr=[];
       for (let i= 0; i< aarr.length; i++) {
           if(aarr[i]!=0){
            newAarr.push(aarr[i]);
           };
           
       }
       document.write(newAarr);
    </script>

能够利用splice删除数组元素(数据)

数组删除元素

数组. pop() 方法从数组中删除最后一个元素,并返回该元素的值 语法:1648834221018

例如:1648834258000

代码示例:

<script>
        //数组 删除最后一个元素 pop
        let fruits=['西瓜','苹果','梨子']
        fruits.pop();
        document.write(fruits);

        //删除掉第一个元素
        let car=['保时捷','法拉利','宝马']
        car.shift();
        document.write(car)
    </script>

数组删除元素

数组. shift() 方法从数组中删除第一个元素,并返回该元素的值

语法:1648834482354

例如:1648834497239

数组删除元素

数组. splice() 方法 删除指定元素

语法:1648834555125

代码示例:

 <script>
        let car=['保时捷','奔驰','宝马','奥迪','法拉利']
        //现在要想要删除保时捷 和奥迪  指定删除
         car.splice(0,1);   //第一个数字表示要删除的下标  第二个为要删除元素的个数 为1就是删除自己本身
        document.write(car);
    </script>

解释:

  • start 起始位置:

    指定修改的开始位置(从0计数)

  • deleteCount:

    表示要移除的数组元素的个数

  • 可选的。 如果省略则默认从指定的起始位置删除到最后

1648834711682

补充 : 获取数组最后一个元素 arr[arr.length-1]

数组快速删除元素的方式 arr.length=0

​ arr=[ ]

​ 数组的长度是可以动态变化的 既可以新增也可以减少