js逻辑运算涉及的内容比较多,这里只介绍一下运算符优先级和某些容易弄错的逻辑运算
js运算符优先级列表(从1开始优先级逐级递减)
1.小括号()
2.一元运算符 ++ -- !
3.算术运算符 先*/%后 + -
4.关系运算符 >、>=、<、<=
5.相等运算符 ==、!=、===、!==
6.逻辑运算符 先&&后||
7.赋值运算符 =
8.逗号运算符,
练习题:
let num=10
console.log(5==num/2&&(2+2*num).toString()==='22')
1.首先对照优先级表格 逻辑运算&&的优先级最低
所以等式被划分为 5==num/2和(2+2*num).toString()==='22'
2.左边结果为true
3.右边先判断优先级 括号优先级最高,22.toString()==='22'
4.右边逻辑为true
5.true&&true,最后返回true
二、前++和后++,前--和后--,以++为例
注意:
1.必须搭配变量使用,搭配具体数字,报错
2.前++和后++单独使用时效果一样,都会加1
3.前++先+1再返回值(先己后人),后++先返回值再+1(先人后己)
let num2=2
console.log(3+num2++)//5
console.log(3+ ++num2)//6
console.log(num2++,++num2)//3,3
三、短路逻辑
1.逻辑&&,遇到正确的表达式会继续往下执行,碰到执行结果为false的表达式直接中断,并且将执行结果返回,如果表达式执行结果都为true,将最后一个表达式执行结果返回。
console.log(0&&1+1)//0
console.log(1&&2&&3)//3
2.逻辑||,如果前面的表达式是错误的会继续执行,遇到正确的表达式则中断执行,并且将执行结果返回,如果表达式的结果都是错误的,将返回最后一个表达式执行结果
console.log(1||2)//1
console.log(0||1||2)//1
console.log(0||false||null)//null
今天的分享完毕,不足之处欢迎指正!
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。