偶然看到一段js代码
var canPlayAudioFiles = !!(document.createElement('audio').canPlayType);这里出现了两个感叹号"!!",其实它不是一个操作符,而是我们熟悉的取反操作“!”执行了两次,为什么要这么写呢,其实就是将目标对象转变成对应的boolean类型而已。取反操作“!”会得到与目标对象代表的布尔型值相反的布尔值,而再做一次取反就得到了与其相同的布尔值。也就是说,对一个对象xx,执行Boolean(xx)和!!xx是一样的,只是编程技巧而已~
本文探讨了JavaScript中使用双感叹号(!!)运算符来转换对象为布尔类型的技巧。通过对该表达式的分析,读者可以了解到如何利用取反操作实现类型转换。
1186

被折叠的 条评论
为什么被折叠?



