猿问

!0这么写有什么好处?

!0这么写有什么好处?会有性能上的区别吗?
还有例如这样的!!0!1!-1,是不是比直接写true和false少了好多字母?这样省流量(lll¬ω¬)?
跃然一笑
浏览 1027回答 2
2回答

繁星淼淼

!0=>不等于0=>true!=1or!=-1=>常用语indexOf的返回值判断,或者其他number的判断!!0=>等于0=>false更多的是考虑简写和优化代码的时候使用,好比if(){}elseif(){}=>?:(人们常见的三目)还一点就是省流量,简写意味着减少代码量,减少文件大小,意味的就是减少流量但是如果仅仅是一个*!0*是优化不了多少的流量的,具体前端优化可以查看前端优化相关的资料至于代码运行的时长你可以使用console.time()//codeconsole.timeEnd();来跑跑的运行的时间

互换的青春

!1和!-1都是!x这种写法的具体事例,对x做"非"运算.这就是一种布尔运算的基本写法吧...,而1和-1的值都为真,所以!1和!-1就等价于false.代码压缩(uglifyjs)工具会利用这个技巧来达到减少代码size的作用.但请注意,没有人会在手写的源码里使用这种方式来替代false.!!x这种就写法就比较通用了,很多知名项目里(vue)都存在这种写法.作用是类型转换,把x转化为相应的布尔值.
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答