1.运算符
1.1赋值运算符
对变量进行赋值的运算符:=
将等号右边的值赋值给左边,要求左边必须是一个容器(变量)
还有其他赋值运算符:+=,-=,*=,/=,%=
let num = 1
num += 1 //等价于num = num + 1
num -= 1 //等价于num = num - 1
num *= 1 //等价于num = num * 1
num /= 1 //等价于num = num / 1
num %= 1 //等价于num = num % 1
1.2一元运算符
- 自增——++,让变量的值+1
- 自减——--,让变量的值-1
1.2.1自增 (前置自增和后置自增单独使用没有区别),自减就不讲了,同理
前置自增参与运算口诀:先自加再使用
后置自增参与运算口诀:先使用再自加
let num = 1
++num //前置自增,结果为2
num++ //后置自增,结果为2
//前置自增和后置自增如果参与运算就有区别
let i = 1
console.log(++i + 2) //4
let k = 1
console.log(i++ + 2) //3
let j = 1
document.write(j++ + ++j +j)//7
1.3比较运算符
比较两个数据大小,是否相等(比较结果为boolean类型,即只会得到 true 或 false)
- >:左边是否大于右边
- <:左边是否小于右边
- >=:左边是否大于或等于右边
- <=:左边是否小于或等于右边
- ==:左右两边值是否相等
- ===:左右两边是否类型和值都相等
- !==:左右两边是否不全等
1.3.1字符串比较
是比较的字符对应的ASCII码
- 从左往右依次比较
- NaN不等于任何值,只要涉及都是false
- 尽量不要比较小数,因为小数有精度问题
- 不同类型之间比较会发生隐式转换
1.4逻辑运算符
&&——逻辑与,一假则假
||——逻辑或,一真则真
!——逻辑非,真变假,假变真
1.5运算符优先级
优先级 | 运算符 | 顺序 |
1 | 小括号 | () |
2 | 一元运算符 | ++ -- ! |
3 | 算数运算符 | 先*,/,%后+,- |
4 | 关系运算符 | > ,>=,<,<= |
5 | 相等运算符 | ==,!=,===,!== |
6 | 逻辑运算符 | 先&&后|| |
7 | 赋值运算符 | = |
8 | 逗号运算符 | , |
- 一元运算符里面的逻辑非优先级很高
- 逻辑与比逻辑或优先级高
1.6语句
- 语句——是一段可以执行的代码(比如prompt可以弹出一个输入框,If语句,for循环语句)
- 表达是——是可以被求值的代码(x = 7)
区别就是表达式可以求值,语句不一定有值
1.6.1分支语句
- if语句
- 三元运算符
- switch语句
1.6.1.1if语句
单分支语法:
if (条件) {
满足条件要执行的代码
}
- 括号内的条件为true时,进入大括号里执行代码
- 小括号内的结果若不是布尔类型时,会发生隐式转换转为布尔类型
- 如果大括号只有一个语句,大括号可以省略,但是,不提倡这么做~
双分支if语法:
if (条件) {
满足条件要执行的代码
} else {
不满足条件执行的代码
}
多分支if语法:
if (条件1) {
代码1
} else if (条件2) {
代码2
} else if (条件3) {
代码3
} else {
代码n
}
释义:
- 先判断条件1,若满足条件1就执行代码1,其他不执行
- 若不满足则向下判断条件2,满足条件2执行代码2,其他不执行
- 若依然不满足继续往下判断,依次类推
- 若以上条件都不满足,执行else里的代码n
- 注:可以写N个条件,但这里演示只写2个
1.6.1.2三元运算符
条件?满足条件所执行的代码:不满足条件所执行的代码
1.6.1.3switch语句
switch (数据) {
case 值1:代码1; break;
case 值2:代码2; break;
default:代码n;break;
}
释义:
- 找到跟小括号里数据全等的case值,并执行里面对应的代码
- 若没有全等 === 的则执行default里的代码
- 例:数据若跟值2全等,则执行代码2
1.6.2循环语句
while循环基本语法:
while (循环条件) {
要重复执行的代码(循环体)
}
释义:
- 跟if语句很像,都要满足小括号里的条件为true才会进入循环体执行代码
- while大括号里代码执行完毕后不会跳出,而是继续回到小括号里判断条件是否满足,若满足又执行大括号里的代码,然后再回到小括号判断条件,直到括号内条件不满足,即跳出
循环退出
- break:退出循环
- continue:结束本次循环,继续下次循环