type
status
date
slug
summary
tags
category
icon
password
JavaScript 基础第二天
算术运算符:
- 经常作为某个数字是否被整除
- 数学运算也叫算术运算, 主要包括加、减、乘、除、取余(取模)
- +:求和、-:求差、*:求积、/:求商、%:取余

算术运算符优先级顺序:
- 同时使用多个运算符写程序时, 会按某种顺序先后执行, 称为优先级
- js中, 优先级越高越先被执行, 优先级相同时左向右执
- 乘、除、取余优先级相同, 加、减优先级相同
- 乘、除、取余优先级大于加、减
- 使用()可以提升优先级
- 总结: 先乘除后加减,有括号先算括号里的
- 计算圆的面积:
赋值运算符:
- 对变量进行赋值的运算符, 使用这些可对变量赋值时快速操作
- 学过的赋值运算:= 将等号右边值赋予给左边, 要求左边必须是一个容器
- 其他赋值运算符: +=, -=, *=, /=, %=, let num = 10 , num加5 赋值写就是: num += 5

二元运算符:
- 经常用于计数来使用, 比如进行10次操作,用它来计算进行多少次
- 众多js运算可根据所需表达式的个数,分为一元、二元、三元运算符
- 前置和后置自增单独使用没有区别
- 前置和后置自增参与运算就有区别
- 前置:先自增后运算
- 后置:先运算后自增
- 以前让一个变量每次+1 ,我们怎么做的呢?

自增运算符的用法:
- 一般开发中都是独立使用, 后面 i++ 后置自增会使用较多

比较运算符:
- 比较两个数据大小、是否相等, 尽量不比较小数,因为小数有精度问题
- NaN不等于任何值,包括它本身
- 不同类型之间比较会发生隐式转换, 最终把数据隐式转成number类型再比较
- 字符串比较,比较的字符对应的ASCII码, 从左往右依次比较
比较运算符的使用:
> : 左边是否大于右边 | <:左边是否小于右边 |
>=:左边是否大于等于右边 | <=:左边是否小于等于右边 |
==:左右两边是否相等 == | ===:左右两边是否类型和值都相等 |
!==:左右两边是否不全等 | 比较结果为布尔型,只会得到true或false |
逻辑运算符:
- 逻辑运算符用来解决多重条件判断
符号 | 名称 | 读法 | 口诀 | 特点 |
&& | 逻辑与 | 并且 | 一假则假 | 两边都为true 结果才为true |
|| | 逻辑或 | 或者 | 一真则真 | 两边有一个true 结果为true |
! | 逻辑非 | 取反 | 真变假, 假变真 | true变false false变true |
逻辑运算符里的短路:
- 只存在于&&和||中,当满足条件会让右边代码不执行
- &&: 左边为false就短路、||: 左边为true就短路
- 原因:通过左边能得到整个式子结果,因此没必要再判断右边
- 运算结果: 无论&&还是|| ,结果都是最后被执行的表达式值,一般用在变量赋值
- 用户输入一个数, 判断一个数是4的倍数,且不是100的倍数:
运算符优先级:
- 一元运算符里的逻辑非优先级很高
- 逻辑与比逻辑或优先级高

表达式和语句:
- 表达式是一组代码的集合,js解释器会计算出一个结果
- 某些情况, 也可把表达式理解为语句, 因为它在计算结果, 也是做事
- 表达式是计算出一个值,语句用来自行使某件事发生(做什么事)
- 表达式: 3 + 4 , 语句: alert() 弹出对话框
- js语句是以分号结束 (可省略) , 如: if语句 for循环
分支语句:
- 程序三大流程控制语句: 顺序, 分支, 循环
- 以前写代码,写几句就从上往下执行几句,这种叫顺序结构
- 有时候根据条件选择执行代码,这种就叫分支结构
- 某段代码被重复执行, 叫循环结构
- 分支语句包含: if分支语句, 三元运算符, switch语句

1. if语句:
- if语句有三种使用:单分支、双分支、多分支
- 括号内的条件为true时,就进入大括号里执行代码
- 小括号内的结果若不是布尔类型时,会发生隐式转换转为布尔类型
1. 单分支if语法:
2. 双分支if语法:
3. 多分支if语法:
- 先判断条件1, 若满足条件1就执行代码1, 其他不执行
- 若不满足则向下判断条件2, 满足条件2则执行代码2, 其他不执行
- 若依然不满足则继续往下判断, 依次类推
- 若以上条件都不满足, 则执行else里的代码, 可写N个条件
2. 三元运算符:
- 符号:? 与 : 配合使用, 用来取值
- 其实是比if双分支更简单的写法, 也叫做三元表达
- 语法:条件 ? 满足条件执行代码 : 不满足条件执行代码
1. 判断2个数的最大值:
2. 数字小于10补0:
- 用户输入1个数,如果数字小于10,则前面进行补0, 如: 01 02
3. Switch 语句:
- switch case语句用于等值判断, 不适合用于区间判断
- switch case需要配合break关键字使用, 没有break会造成case穿透
- 找到跟小括号里数据全等的case值,并执行里面对应的代码
- 若没有全等 === 的则执行default里的代码
- break: 结束switch语句,防止穿透
简单计算器:
- 用户输入2个数字, 然后输入+ - * /,可执行不同运算结果
4. 循环结构:
- 学习时可帮助更好理解代码运行, 工作时可更快找到bug
- 断点: 在某句代码上加标记叫断点, 程序执行到这句有标记的代码时会暂停下来

While 循环:
- 循环: 重复执行某段代码
- 跟if语句很像,都要满足小括号里的条件为true才会执行代码
- while大括号里代码执行完毕后不会跳出,而是继续回到小括号里判断条件是否满足,若满足又执行大括号里的代码,然后再回到小括号判断条件, 直到括号内条件不满足,即跳出
- 循环的本质就是以某个变量为起始值, 然后不断产生变化量, 慢慢靠近终止条件的过程
循环需要具备三要素:
- 变量起始值
- 终止条件 (没有终止条件, 循环会一直执行, 造成死循环
- 变量变化量 (自增或自减)
- 页面输出1-10:
- 计算从1加到100总和并输出
- 计算1-100之间所有偶数的和
- 弹出对话框,‘你喜欢我吗’,如果输‘喜欢’, 则结束, 否则一直弹出对话框:
- 用户登录验证, 输入用户名和密码
- 求1-100之间个位数不为3的数累加和
5. 循环退出: continue和break的区别
- continue:结束本次循环, 继续下次循环
- break:跳出所在的循环
ATM取款机案例:
- 输入不同的值, 用Switch来执行不同的操作
- 用户可存钱、取钱、查看余额和退出
- 循环的时候, 需反复提示输入框, 所以提示框写到循环里
- 退出条件是用户输入 4, 如果是4, 则结束循环, 不再弹窗
- 提前准备100金额预先存储一个数额
- 取钱存钱则用加减法, 查看余额则直接显示金额
本节单词:
- if
- else
- switch
- case
- while
- continue
- break
- default
- Author:NotionNext
- URL:https://tangly1024.com/article/example-12
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!