JS运算符
隐式转换,JS内部帮我我们转换的
显示转换,我们自己手动通过方法转换数据类型
除了加法数据类型不是number类型是会进行拼接,其他都不会拼接,会隐式转换
JS的赋值运算符
可以同赋值号赋值 (=)
主要作用就是简化代码量
写法有 += -= *= /= %=
如 var a = 1
a = a + 1 (我自身 赋值为 我自身加1)
简写 a += 1
JS的比较运算符
< > >= <= == === != !==
小于 大于 大于等于 小于等于 等于 全等于 不等于 不全等于
==跟===作用一样,用于对比两侧数据是否相等
==只对比数据,不对比数据类型
=== 对比数据,且对比数据类型
==在对比数据时,两侧数据不用,比如一侧数字,一侧字符串,会进行隐式转换
!= !==
两者作用相同,用于对比两侧数据是否相同,相同时返回false,不相同返回 ture
!=值对比数据,不对比数据类型(会隐式转换,转换为相同类型再对比)
!== 对比数据,且对比数据类型
如: console.log(2 != 2) false
console.log(2 !== 2) false
console.log(2 != '2') false
console.log(2 !== '2') ture
JS的逻辑运算符
非0即为真
&&(逻辑与 逻辑且)
|| (逻辑或)
!(非,取反,逻辑非)
逻辑与
语法:变量1 && 变量2
表达式1 && 表达式 2
返回方式
前一个为真,就返回后一个
前一个为假。就返回第一个
逻辑或
var bo = 1 || 0
逻辑或左侧1,右侧0
按照逻辑或的返回方法
前一个为真(左侧为真),返回左侧
前一个为假(左侧为假),会返回右侧(后一个)
var bo = 0 || 1
逻辑或左侧为0,右侧为1
按照逻辑或的返回方式
前一个为真(左侧为真),返回左侧
前一个为假(左侧为佳),会返回右侧(后一个)
逻辑非,取反
改变变量值的布尔类型
0转为布尔值为false,false经过取反为ture,所以打印ture
1转为布尔值为ture,ture经过取反为false,所以打印false
JS的自增自减运算符
变量名前或者后写上 ++ --
如 var a = 0
a++
a++
++a
a++
a--
--a
++ 在前, 先运算自增, 然后参与周围表达式
++ 在后, 先参与周围表达式运算, 然后自增1
什么是分支语句
基于一个条件,决定执行那段代码
需求: 基于某一个条件, 只打印 123 或者 只打印 456
语法 :if(条件){当条件为真时,执行的代码}
if 关键字
() 条件
{} 要执行的代码
else {} 当他前边的所有条件都为假时, 他会执行
if 判断 从上往下依次检查, 查询是否满足条件
如果满足, 则仅执行当前分支, 其他不执行
如果不满足, 则会进行下一个 if 的判断, 成功则执行, 不成功继续往下执行
直到 最后一个 if 成功则执行, 不成功则不执行
最后 查看是否有 else 分支, 如果有, 且前边所有的 if 条件都为假 此时 会执行 else 分支
三元表达式
语法: 条件 ? 条件为真时执行(只能一行) : 条件为假时执行(只能一行)