js数组(增删改查)+数组遍历+数组的应用(最小值,最大值,求和,筛选数组)

212 阅读2分钟

数组的概念

    1.数组是什么? : 是一种复杂数据类型
    2.数组作用? : 可以在变量中 ‘存储多个数据’
    3.数组内存原理? : 数组内存由三个部分组成(数组三要素)
         元素: 数组中的数据
         下标: 元素的位置
         长度: 元素的数量

数组语法

        1.数组声明:  let  数组名 = [元素1,元素2,元素3,.......]
        2.数组取值    数组名[下标]
        3.数组长度    数组名.length

image.png

数组基本使用

    let array = ['小明', '小刚', '小花', '小美', '小白']
    // 输出数组
    console.log(array)

数组的增删改查

数组的查询与修改

    1.声明数组  let 数组名 = [元素1,元素2,元素3,....]
    2.数组取值(查)    数组名[下标]
    3.数组赋值(改)    数组名[下标] = 值
    let arr = [20, 30, 40, 50, 60, 70]
    // 赋值
    arr[9] = 100
    arr[1] = 200
    // 给下标为20处赋值数组
    arr[20] = 190
    console.log(arr[5]);
    console.log(arr);

当数组只有6个元素(也就是下标为0-5),而在下标为20处赋值一个元素,那么中间的下标对应的元素均为undefined

控制台效果

image.png

数组的增加与删除

     数组名.push(元素) : 一个或多个元素,添加到末尾
     数组名.unshift(元素)  : 一个或多个元素,添加到头部
    
     数组名.pop() : 删除最后一个元素
     数组名.shift() : 删除第一个元素
     
     数组名.splice(起始下标,删除个数) : 删除数组中指定元素
     let arr = [10, 20, 30, 510, 50, 60, 70, 80, 90]

        arr.push(0)
        console.log(arr);

        arr.unshift(30)
        console.log(arr);

        arr.pop()
        console.log(arr);

        arr.shift()
        console.log(arr);

        arr.splice(1, 5)
        console.log(arr);

image.png

数组的遍历

数组遍历: 依次读取数组每一个元素值

固定格式的for循环:

    let arr = [10, 20, 30, 40, 50, 60, 70, 80, 90]
        for (let i = 0; i < arr.length; i++) {
            console.log(arr);
        }

数组的应用

数组求和

    (1)声明一个变量存储结果
    (2)遍历数组中每一个元素
    (3)累加
    let arr = [10, 20, 30, 40, 50, 60, 70, 80, 90]
    let sum = 0
    for (let i = 0; i < arr.length; i++) {
      sum += arr[i]
    }
    console.log(sum);

求数组中的最大值和最小值

        求数组最大值(最小值)
        1.声明变量默认为第一个元素
        2.遍历数组
        3.依次比较大小,然后赋值
    let arr = [20, 55, 60, 10, 90]
    // 使第一个数暂时为最大的数
    let max = -Infinity
    for (let i = 0; i < arr.length; i++) {
         max > arr[i] ? max : max = arr[i]
        }
    console.log(max);
    
    //求最小值
    // 是第一个数暂时为最小值
    let min = Infinity
    for (let i = 0; i < arr.length; i++) {
         min < arr[i] ? min : min = arr[i]
        }
    console.log(min);

筛选数组

    将数组 [2, 0, 6, 1, 77, 0, 52, 0, 25, 7] 中大于等于 10 的元素选出来,放入新数组
    
    1.找出指定范围符合条件的数
    2.把符合条件的数放入新数组中(新增元素)
     let arr = [2, 0, 6, 1, 77, 0, 52, 0, 25, 7]
     let arr1 = []
     for (let i = 0; i < arr.length; i++) {
         if (arr[i] >= 10) {
             arr1.push(arr[i])
           }
        }
     console.log(arr1);