虽然不是第一次看到!!震惊.jpg,但之前都不知道为何要这么写,随着年龄增长,也越来越理解那些源码的用心良苦。那么,废话不多说,直接进入正题。
想要领略神技的威力,还需亲身体验一下:
var a = null;
var b = 1;
!!a // false
!!b // true
就是这么简单,这么粗暴,短短的!!真的是相当的精髓,我愿称之为javascript最强转boolean的方法。
说说应用场景,因为后端同学有些数据在有时是正常的,比如数组,如果没有的话,就可能返回null了。那么同样地,如果返回的是布尔值,在true时为true,如果没有为null,这就是坑的地方,常见场景:收藏、点赞、默认地址等。这时候!!震惊君就帮我们完美地解决了这个问题,这样写代码简洁,不冗余,没有什么副作用,再次赞叹一下,感谢震惊君!!。