1.算数运算符—三要素(1.优先级2.结合方向3.操作数目)
求余%:只要余数不要商
2.赋值运算符
将右值赋给左值
赋值表达式是有值的,它的值为右值的值
复合赋值运算符------+=;-=;*=;/=;%=
3.自增自减运算符++;–
对自身变量自加1或自减1
前加加,前减减
先计算数值,再使用
后加加,后减减
先使用,再计算
4.关系运算符 > < != ===
通过关系运算符连接起来的表达式,结果一定是布尔值
逻辑等==
判断两个值是否相等
逻辑不等!=
不等为真,等 为假
严格逻辑等===
数值和类型都一致,不能数据转换
系统会在可以发生数据转换时,将两个量进行计算
异同点:
1.=赋值运算符,将右值赋值给左值,所有和=连接的复合赋值运算符优先级是最低的,赋值表达式的值为右值的值
2.==逻辑等,判断左值和右值是否相同,可以支持数据类型转换
3.===严格逻辑等,不支持数据类型转换,必须数值和类型都一致为true
5.逻辑运算符 && || !
&&:完成一件事有n个步骤,每个步骤都得实现,整件事才能完成,各个步骤间的关系称为与
||:完成一件事有n个步骤,每个步骤都都能完成该件事,各个方法间的关系称为或
!:某个条件的对立面
通过逻辑运算符连接起来的表达式,结果一定是布尔值
6.字符串和数值之间的类型转换
隐式转换
1-凡是通过加号连接的数据,结果全部转换为字符串即为字符串拼接
2-除了加号以外的运算符计算的结果全都为数字
注意事项:
1-两个 字符串做除了加号以外的运算,结果也是数字
2-如果遇到了非数值字符串做加以外的运算,结果为NaN,也是数字类型
显式转换
1-字符串转数字
parseInt(字符串||有小数点的数字):将内容转换成没有小数点的数字
parseFloat(字符串||没有小数点的数字):将内容转换成有小数点的数字
Number(有小数的数字的字符串||没有小数的数字的字符串):转换为数字
2-数字转字符串
数字.toString();
工作中的使用
字符串转数字
console.log("123"/1);
数字转字符串
console.log(123+"");
逻辑分支
程序结构
1-自上而下
2-选择结构
根据条件的真假,进行选择执行某部分代码
3-循环
if
语法格式
a.
if(条件表达式)
一个语句;
b.
if (条件表达式) {
语句;
} else { //else代表之前条件的所有对立面
语句;
}
c.
if(条件1){
语句1;
}else if(条件2){
语句2
}...
else if(条件n){
语句n
}else{
}
注意事项
1-条件表达式无论多么复杂,结果一定会是布尔值
2-条件表达式只能修饰后面的一句话
3-一句以上,用{}括起来
4-无论几句话,建议都用{}括起来
if...else if所有条件都是互斥的,
当某个条件成立时,后面的代码将都不再执行
选择嵌套:一个if语句是另一个if条件表达式
嵌套建议不要超过5层
3层以上要留意了
规避&&||
Switch/case
switch(匹配值){
case 被匹配值1:
语句1;
case 被匹配值2:
语句2;
...
}
注意事项
1-通过匹配值和被匹配值比较,选择执行语句
2-Switch只匹配一次,在没有break的情况下,具备穿透效果
3-break阻止穿透
4-Switch也有类似于if的else关键字:default
使用选择结构的场景
1-范围匹配用if(等值匹配也可)
2-等值匹配用Switch
三目运算:条件运算符
表达式1?表达式2:表达式3;
表达式1是一个布尔值,根据表达式1 的结果返回表达式2或表达式3
表达式1值为true,返回表达式2
表达式1值为false,返回表达式3