在js中,为什么!0是true,0是false,1是false,1是true,-1是false,-1是true看过别人以下解析:1.==会把比较的二者进行类型转换:如:0 == false; // true,会把0转成bool值进行比较1 == true; // true,同样把1转成bool值
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/28 17:22:28
![在js中,为什么!0是true,0是false,1是false,1是true,-1是false,-1是true看过别人以下解析:1.==会把比较的二者进行类型转换:如:0 == false; // true,会把0转成bool值进行比较1 == true; // true,同样把1转成bool值](/uploads/image/z/3177265-49-5.jpg?t=%E5%9C%A8js%E4%B8%AD%2C%E4%B8%BA%E4%BB%80%E4%B9%88%210%E6%98%AFtrue%2C0%E6%98%AFfalse%2C1%E6%98%AFfalse%2C1%E6%98%AFtrue%2C-1%E6%98%AFfalse%2C-1%E6%98%AFtrue%E7%9C%8B%E8%BF%87%E5%88%AB%E4%BA%BA%E4%BB%A5%E4%B8%8B%E8%A7%A3%E6%9E%90%EF%BC%9A1.%3D%3D%E4%BC%9A%E6%8A%8A%E6%AF%94%E8%BE%83%E7%9A%84%E4%BA%8C%E8%80%85%E8%BF%9B%E8%A1%8C%E7%B1%BB%E5%9E%8B%E8%BD%AC%E6%8D%A2%EF%BC%9A%E5%A6%82%EF%BC%9A0+%3D%3D+false%3B+%2F%2F+true%2C%E4%BC%9A%E6%8A%8A0%E8%BD%AC%E6%88%90bool%E5%80%BC%E8%BF%9B%E8%A1%8C%E6%AF%94%E8%BE%831+%3D%3D+true%3B+%2F%2F+true%2C%E5%90%8C%E6%A0%B7%E6%8A%8A1%E8%BD%AC%E6%88%90bool%E5%80%BC)
在js中,为什么!0是true,0是false,1是false,1是true,-1是false,-1是true看过别人以下解析:1.==会把比较的二者进行类型转换:如:0 == false; // true,会把0转成bool值进行比较1 == true; // true,同样把1转成bool值
在js中,为什么!0是true,0是false,1是false,1是true,-1是false,-1是true
看过别人以下解析:
1.==会把比较的二者进行类型转换:
如:0 == false; // true,会把0转成bool值进行比较
1 == true; // true,同样把1转成bool值再和true进行比较
2.===是不会把比较的二者进行类型转换,是string就是string,是number就是number
如:0 === false; // false,因为0是number,false是boolean,两者就肯定不相等
1 === true; // false
但如果
-1==false //false
-1==true //false
负数用==去判断都是false,什么原理?
在js中,为什么!0是true,0是false,1是false,1是true,-1是false,-1是true看过别人以下解析:1.==会把比较的二者进行类型转换:如:0 == false; // true,会把0转成bool值进行比较1 == true; // true,同样把1转成bool值
很简单 true 和false 和负数比较 会把 true 隐式转换为1 false隐身转换为0
所以负数用==去比 是false
!-1是false,!-1是true 这个原理 因为JS规定 非0的数字是true !-1 相当于 !true 肯定是false !true == true
你把握隐式转换 和 非0的数是true 就可以解决你的疑惑