十一. 数字转布尔值 (非零即为真)
console.log(Boolean(100))打印true
转为true: 非零 非NaN数字 非空字符串
转为false:NaN 0 空字符串 null undefined
十二. JS的运算符
“+” “-” “*” “/” “ % ”
(注:除了加法数据类型不是number类型时会进行拼接,其他都不会拼接会进行隐式转换)
1. 赋值运算符(可以使用赋值号赋值)
‘+=’‘-=’‘*=’‘/=’‘%=’作为运算,可以简化代码量
例 var a = 1
a = a+1-- a+=1 有a+=10 值为11
a = a-1-- a-=1 值为0
a = a*3-- a*=3 值为3
a = a/1-- a/=1 值为1
a = a%1-- a%=1 值为0
2.比较运算符
‘>’ '<' '>=' '<=' '=='(等于) '==='(全等) '!='(不等于) '!=='(不全等于)
例:console.log(1>2) 打印false
"=="只对比数据,不对比数据类型 “===”不仅对比数据还对比数据类型
“>=”在对比数据时,两侧数据不同,如一侧是数字一侧是字符串,会进行隐式转换
(隐式转换:JS内部帮助转换的)
(显式转换:自己手动通过方法转换数据类型)
“!=”和“!==”两者作用一样用于对比两侧数据是否相同,相同时false不同时true
"!="只对比数据不对比数据类型(会进行隐式转换,转换成相同类型对比)
"!=="对比数据且对比数据类型
十三. 逻辑运算符
“&&” 逻辑与,逻辑且
语法:变量1 && 变量2 表达式1 && 表达式2
返回方式:第一个为真就返回后一个;第一个为假就返回第一个
“
语法:变量1
返回方式:左侧为真就返回左侧;左侧为假就返回右侧
“!” 逻辑非,取反
语法:! 变量
作用:改变变量值的布尔类型
十四. 自增自减
变量名 前或后写++(
“++”在前先运算自增,然后再参与表达式
“++”在后先参与周围表达式,然后再运算自身
十五. 分支语句
基于一个条件,决定执行哪段代码
语法:if(条件){当条件为真时执行的代码}
if判断:①从上往下依次检查,查询是否满足条件
②如果满足条件则执行当前分支,其他不执行
③如果不满足则会进入下一个if的判断,成功则执行,不成功则向下继续执行
④直到最后一个if成功则执行,不成功则不执行
⑤最后查看是否有else分支,如果有且前面所有if条件都为假时执行else分支
switch(条件) switch case 在做对比时使用的严格的全等 也就是说会对比数据
例:var a = 21 default会在上述的条件(case)都不满足时执行
Switch...case 的穿透现象
当case后面没有跟break时会从第一个满足条件的case开始执行,一直到最后一个或到后续的最近一个break
三元表达式
JS分支语句的一种,执行的代码段只有一行
语法:条件?条件为真时执行(只能一行);条件为假时执行(只能一行)
例:true? console.log('条件为真');console.log('条件为假')