js基础(三)

分支结构

为了让程序变得更“聪明”。增加了分支结构判定。

if 语句

语法:
    if (expression) {
        code...
    } else if (expression1) {
        code...
    } else if (expression2) {
        code...
    } else {
        code...
    }
说明;
    if 语句中,可以分为三部分 1 if 语句 2 else if语句 3 else语句
    1 必须出现 2 可以出现多次 可以出现一次 可以不出现 3 可以出现一次 可以不出现
    () 表示判定条件 里面的内容 最终是一个布尔值 
    分支结构中,最终代码执行一条分支中的代码。其余的分支不会执行

switch语句

语法:
    switch (expression) {
        case value1:
            code...
        break;
        case value2:
            code...
        break;
        case ...
            code...
        break;
        default:
            code...
        break;
    }
    swtich 是 开关的意思
    expression 是表达式 最终也是一个布尔值
    case 表示分支 可以出现多次
        value只能是固定的值 不可以是范围表达式
    如果expression的结果与某一个case的value全等 则会执行对应的代码
    break:打断代码,可以不出现,这种情况下会出现“落空”/“穿透”现象
    default: 表示当expression的结果没有与任何一个case的value匹配 则会执行default的代码

三元运算符

是一种对if else语句结构的简化
    if else
        if (expression) {
            code1
        } else {
            code2
        }
    三元:
        语法: expression ? value1: value2
        当表达式的结果为真时,使用value1,否则使用value2
        expression ? code1 : code2;

循环结构

循环就是重复

while循环

语法:
    while (expression) {
        code...
    }
执行规则:
    先对expression判定 如果为真 进入循环 执行code 
    当code执行完毕 再判定expression 如果为真 继续进入循环 code...
    当code执行完毕 再判定expression 如果为真 继续进入循环 code...
    当code执行完毕 再判定expression 如果为真 继续进入循环 code...
    当code执行完毕 再判定expression 如果为真 继续进入循环 code...
    当code执行完毕 再判定expression 如果为真 继续进入循环 code...
    ...
    直到expression不成立 跳出循环 
注: 千万注意,一定要在某一次循环中,将expression变为false

do while循环

语法:
    do {
        循环体
    } while (expression);
执行规则:
    先执行一次循环体的内容 
    再对expression进行判定
    如果为真,继续循环,如果为假,跳出循环
注: 千万注意,一定要在某一次循环中,将expression变为false
注: 无论expression第一次的时候是真还是假,都会执行一次循环体的内容

for 循环

语法:
    for (初始条件1; 判定条件2; 修改初始值4) {
        循环体3
    }
执行规则:
    第一次执行: 1 2 3 4 
    之后的每一次执行: 2 3 4 
变种1: 将初始条件放到for循环前面
变种2: 将修改初始值放入循环体的末尾
变种写法, 知道可以这么写,千万不要这么用
循环变量:在循环结束之后,依旧可用

今日

break

break关键字,用于打断循环的执行。
我们已经见过的break就是switch case语句中的break。如果执行完case中的代码遇见了break,则跳出分支结构。如果没有遇见break,则会继续往下“落空”。继续执行下一个case代码。
额外知识点: 可以通过 x: 在for关键字之前 给当前循环添加一个标记 x表示这个标记的名称
当break使用时,可以在break后面跟一个x来表示break打断的时哪层循环。

continue

continue关键字,用于跳过当前层循环,进入下一次循环

注: continue和break只能够用在循环体内

函数

函数就是一个工具,可以将代码放在里面,随时执行。
注:函数是一等公民

函数的定义

第一种定义方式: 函数声明
function 函数名() {
    要执行的代码   
}
第二种定义方式: 函数表达式
var 变量 = function() {
    要执行的代码
}
注: 第二种方式的本质 其实是定义了一个变量,并将这个函数的地址交给该变量。于是,函数名就是这个变量名。

函数的调用

**函数声明定义出来的函数,调用时,既可以在函数之前,也可以在函数之后。
函数表达式定义的函数,调用时,只能够在后面调用。**

预解析

JS引擎执行代码的阶段: 通读代码 执行代码
在通读代码阶段,引擎会先查看是否有语法错误,如果有,就报错。如果没有,则在这个过程中,就会将代码中所有的通过var声明的变量和通过function声明的函数提升到代码的最前面。这个提升行为,就是发生在预解析阶段。
所以,切记,以后读代码的第一反应,就是变量和函数的提升。

函数的参数

函数整体由 关键字 函数名 形参列表 函数体组成
形参列表中,可以放置“形式参数”。简称:“形参”。
    // 定义一个函数,计算两个数字的和
    function sum(num1, num2) {
        // 形参num1 "代表" 将来函数执行的时候,要传递的一个参数
        // 形参num2 "代表" 将来函数执行的时候,要传递的另一个参数
        console.log(num1 + num2);
    }
    // 函数执行了
    sum(1, 2); // 输出3

当函数执行的时候,是否需要传递参数,要看函数是否有形参。那么在函数执行的时候传递的参数,叫做实际参数,简称实参。

注: 就像洗碗机一样,我们有了洗碗机(函数), 还需要把“碗”放进去,还需要把“洗洁精”放进去,这样,按下开关(调用函数)时,才可以最终得到一个干净的碗。那么这里的“碗”和“洗洁精”等内容,就是“实际参数”。而洗碗机放碗的位置,和放洗洁精的位置,就是“形式参数”。

一个比较复杂的学习方法

  1. 看别人的代码和注释
  2. 把注释删掉,自己写注释
  3. 把代码删掉,看自己的注释写代码
  4. 注释和代码都和删掉,自己写思路
  5. 看着自己的思路写代码

弗曼学习法

  1. 准备一个你要记忆的知识点
  2. 想办法把这个知识点讲给别人听
  3. 在讲的过程中出现问题了,重新回顾知识点
  4. 无限精简自己的语言
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值