&&和||后面都是不加()的, jq1=!(numa<numb) 为什么!后面要加()号?

来源:2-11 是非颠倒(逻辑非操作符)

小呆呆呆

2016-08-16 10:18

&&和||后面都是不加()的,     jq1=!(numa<numb) 为什么!后面要加()号?       

写回答 关注

7回答

  • 慕粉3951534
    2016-10-09 16:56:03

    和优先级相关,!的优先级高于<,如果!(numa<numb)不加括号,就会先计算!numa,再计算<numb。

    至于&&和|| 左右不加括号,是因为在那些表达式中,&& 和 || 的优先级较低,会先计算左右的表达式,最后计算 && 和 ||,加不加括号都不影响结果。

    建议去好好看一下编程基础中运算符的优先级关系,这个是通用的,无论哪门语言都一样。


  • 易慕秋
    2016-08-16 11:44:17

    运算符的优先级,算术>比较>逻辑运算>赋值

  • H0st
    2016-08-16 11:38:58

    看起来就像数学公式里,加减法与乘除法那样

  • 慕粉3786140
    2016-08-16 10:55:14

    低优先级的表达式加括号转为高优先级。

  • 慕桂英1668911
    2016-08-16 10:41:54

    优先级

  • 冷夜色cheeks
    2016-08-16 10:35:30

    numa<numb这部分是一个整体,所以括住,如果没有括号就是!numa和numb比较了。

    腹黑的王先森

    <是比较运算符,为什么比!优先级低呢

    2016-09-06 16:46:11

    共 1 条回复 >

  • milos
    2016-08-16 10:27:52

    后面括号里是条件嘛 !代表的是“非”就是 false

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468782 学习 · 22507 问题

查看课程

相似问题