美文网首页
判断-1==true返回false

判断-1==true返回false

作者: cooqi | 来源:发表于2019-05-22 11:03 被阅读0次

起因只是我随意想测试下&&,但是后来发现我一直没注意到的问题


TIM截图20190522105435.jpg

让我纠结的是,负数,我之前一直以为是负数是false,但是才发现,非0即true,负数转布尔是true

1.JS对于逻辑与运算a&&b,如果a不成立(运算后结果是false,null,'',0,undefined等值,下同)则返回a,如果a成立则返回b,如果使用&&连接了多个表达式,如果每个表达式都成立,则返回最后一个表达式的运算结果,如果有至少一个不成立,则返第一个不成立的表达式的运算结果
2.JS对于逻辑或运算a||b,则是从左边开始,返回第一个成立的表达式的运算结果,如果全部不成立则返回最后一个表达式的运算结果。
3.&&优先级高于||,先运算&&再用&&运算的结果去||运算。

好的,了解了,但是当我输入-1==true的时候,又返回了false,当时就蒙圈了,于是求助百度

1.如果有一个操作数是布尔值,则在比较相等性之前先将其转换为数值——false转换为0,而true转换为1;

  1. 如果一个操作数是字符串,另一个操作数是数值,在比较相等性之前先将字符串转换为数值;

好了,知道了,因为有一个值是布尔值,一个是数字,先将布尔值转数字
所以-1==true相当于-1==1;这样就明明白白了,当然是false
也就是说数字和除了0和1,其余==判断都肯定都是false

参考https://www.cnblogs.com/wl521/p/7423852.html
https://www.51-n.com/t-4207-1-1.html

相关文章

  • 判断-1==true返回false

    起因只是我随意想测试下&&,但是后来发现我一直没注意到的问题 让我纠结的是,负数,我之前一直以为是负数是false...

  • shell条件判断

    1.基本语法 注意:条件非空即为true,[ ggg ]返回true,[] 返回false。 常用判断条件 (1)...

  • 运算符的一些运用

    | | && ! (或且非) || 返回true &&返回false 0是false 1是true a++...

  • 【Python爬虫】-8/17课后作业

    逻辑判断练习 1.True and True True 2.False and True False 3.1 ==...

  • hasOwnProperty 会失效的场景

    一、hasOwnProperty 是什么 hasOwnProperty() 返回 true / false,判断对...

  • 逻辑函数IF\AND\OR

    逻辑值:TRUE\FALSE,返回1和0 and:所有条件为true,则返回true,否则返回false or:其...

  • SQL基础语句

    --增、删、改 --判断(true false) true返回结果 --创建视图 -- 删除视图 --创建索引: ...

  • js基础

    判断:‘true‘==true ; 为什么返回false? 参考CSDN博主mhbsoft[https://blo...

  • Mr.Li--python列表

    判断 List in () 判断列表是否存在,如果存在为True,否则返回False List not in ()...

  • 12.比较运算符

    True 1False 0 比较运算符 ==!= < ><= >= 成立返回True,不成立返回False

网友评论

      本文标题:判断-1==true返回false

      本文链接:https://www.haomeiwen.com/subject/vzdyzqtx.html