JS基础总结三

143 阅读4分钟

一、循环语句

1、while 循环

1. while 循环语法:

  • while(可以是表达式,可以是循环条件){循环体} image.png

  • 执行流程

    1. 先判断循环条件
      1. 如果条件成立,则执行循环体代码
      2. 如果条件不成立,则结束循环语句
    2. 重复步骤1
  • 循环需要具备三要素:

    1. 循环变量

    2. 循环条件(没有终止条件,循环会一直执行,造成死循环)

    3. 循环变量自增(用自增或者自减)

  • 循环条件可以是如下代码:

    1. 关系表达式:结果一定是布尔类型

    2. 布尔类型值

    3. 其他数据:编译器会默认转成布尔类型判断是否成立

2. while 循环 结束语法(break与continue)

  1. break与continue是用于在循环内,控制循环的

  2. break:直接结束循环

  3. continue:结束本次循环里continue后面的代码,继续下一次循环

2、 for 循环

1. for 循环语法

image.png

  • 执行规则

    1. 执行语句1(声明循环变量)

    2. 判断语句2结果是否为true(循环条件)

      1. true : 则执行循环体

        1. : 执行语句3(循环变量自增)
      2. false:循环结束

    3. 重复步骤2

2. 退出循环(continue和break)

  • 循环结束:

    1. continue:结束本次循环体,继续下次循环
    2. break:结束整个循环语句,跳出所在的循环(使用最多
  • 注意点:

    1. continue:只能用于循环语句
    2. break:可以用于结束循环语句 + switch-case分支语句

3. 循环嵌套

  • 声明:一个循环里再套一个循环,一般用在for循环里

image.png

二、数组

  • 声明:数组是一种复杂的数据类型
  • 作用:可以在容器中存储多个数据

1、数组是什么

1.语法

image.png

2.注意

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

3.数组三要素

  1. 元素:数组中保存的每个数据都叫数组元素,元素可以是任何类型

  2. 下标:数组中数据的编号, 编号从0开始

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

4.数组的内存结构由三部分组成(数组三要素)

image.png

2、数组的基本使用

1. 取值语法

image.png

  • 注意:
    1. 通过下标取数据
    2. 取出来是什么类型的,就根据这种类型特点来访问

2.遍历数组

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

  • 语法: image.png

3、操作数组

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

1. 数组增加新的数据

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

    • 语法:

      image.png

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

    • 语法: image.png

2. 数组删除元素

  • 删除元素的使用场景:
    1. 随机抽奖,中奖的用户就需要从数组里面删除,不允许重复抽奖
    2. 点击删除按钮,相关的数据会从商品数据中删除

后期课程我们会用到删除操作,特别是splice

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

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

    • 语法: image.png
  3. 数组 .splice() 方法  删除指定元素

    • 语法: image.png
  • 注意:
    1. start 起始位置:

      1. 指定修改的开始位置(从0计数)
    2. deleteCount:

      1. 表示要移除的数组元素的个数
      2. 可选的。 如果省略则默认从指定的起始位置删除到最后
      3. deleteCount 后面可以插入新的元素
  • 数组塌陷
  1. 说明:数组在执行删除操作时,删除数组单元之后,后面的数组单元会向前移动,出现在删除单元的位置上,造成数组长度减少的现象,就是数组的塌陷。

  2. 塌陷的影响:只要数组执行删除操作,立即就会触发数组的塌陷,数组塌陷不能阻止,我们只能消除数组塌陷造成的影响。

  3. 解决方法

    案例一
    // 删除元素为0的数值
    let arr = [5, 12, 0, 8, 11, 0, 0, 0, 9, 0, 15, 20];
    
    // 方法一
    for (let i = 0; i < arr.length; i++) {
    if (arr[i] == 0) {
        arr.splice(i, 1);
       i--;
        }
    }
    console.log(arr);
    
    案例二
    // 方法二
    for (let i = arr.length-1; i >= 0; i--) {
    if (arr[i] == 0) {
        arr.splice(i, 1);
        }
    }
    
    console.log(arr);
    

3. 数组修改元素

  • 声明:重新赋值

  • 语法:数组[下标] = 新值

4. 数组查询元素

  • 声明:查询数组元素,或者我们称之为访问数组数据
  • 语法: 数组[下标]