常见js中判断== true/false总结

常见js中判断==为true/false总结

false == 0 输出true;因为在做判断的时候,两者中有boolean(布尔类型),会把boolean先转化为number(数字类型),false为0,true是1。也就是等价于判断 0 == 0 ,结果为true。

' ' == false 输出为true;js中空字符串与0相等,也就意味着空字符串等等于false。

'0' == false 正确输出为true;这里有一个js规则:string(字符串类型)和number作比较的时候,string会先转化成number。此时字符串0转化为了数字0,即: 0 == 0;结果应该为true。

Boolean('0') 正确输出为true;string转化成Boolean类型,空字符串为false,别的字符串全是true。

注意:

1.两者做判断时,若有布尔类型,会先把boolean转换成number,即0 (false) 和 1 (true);

2.字符串string直接转换成Boolean类型时,除了空字符串为false外,其余都是true;

3.字符串string和number类型做比较的时候,string会转化成number。

相关推荐
兆子龙3 小时前
ahooks useRequest 深度解析:一个 Hook 搞定所有请求
java·javascript
兆子龙3 小时前
React Suspense 从入门到实战:让异步加载更优雅
java·javascript
KKKK3 小时前
SSE(Server-Sent Events)流式传输原理和XStream实践
前端·javascript
子兮曰3 小时前
Humanizer-zh 实战:把 AI 初稿改成“能发布”的技术文章
前端·javascript·后端
Din4 小时前
主动取消的防抖
前端·javascript·typescript
H5开发新纪元4 小时前
Nginx 部署 Vue3 项目完整指南
前端·javascript·面试
决斗小饼干4 小时前
跨语言移植手记:把 TypeScript 的 Codex SDK 请进 .NET 世界
前端·javascript·typescript
进击的尘埃4 小时前
Vitest 浏览器模式:别再用 jsdom 骗自己了
javascript
bluceli4 小时前
JavaScript模块化深度解析:从CommonJS到ES Modules的演进之路
前端·javascript