小呆呆呆
2016-08-16 10:18
&&和||后面都是不加()的, jq1=!(numa<numb) 为什么!后面要加()号?
和优先级相关,!的优先级高于<,如果!(numa<numb)不加括号,就会先计算!numa,再计算<numb。
至于&&和|| 左右不加括号,是因为在那些表达式中,&& 和 || 的优先级较低,会先计算左右的表达式,最后计算 && 和 ||,加不加括号都不影响结果。
建议去好好看一下编程基础中运算符的优先级关系,这个是通用的,无论哪门语言都一样。
运算符的优先级,算术>比较>逻辑运算>赋值
看起来就像数学公式里,加减法与乘除法那样
低优先级的表达式加括号转为高优先级。
优先级
numa<numb这部分是一个整体,所以括住,如果没有括号就是!numa和numb比较了。
后面括号里是条件嘛 !代表的是“非”就是 false
JavaScript进阶篇
468782 学习 · 22507 问题
相似问题