js中viod运算符总结
写在前面
简单来说,void运算符用于对给定的表达式进行求值,然后返回 undefined。该运算符通常用于避免输出不应该输出的值。
常用语法
1 | void expression |
官方定义
这个运算符能向期望一个表达式的值是undefined的地方插入会产生副作用的表达式。
void 运算符通常只用于获取 undefined的原始值,一般使用void(0)(等同于void 0)。在上述情况中,也可以使用全局变量undefined 来代替(假定其仍是默认值)。
常见用法
通过采用void 0取undefined比直接写undefined更靠谱更安全,应该优先采用void 0这种方式;
填充<a>的href确保点击时不会产生页面跳转;填充<image>的src,确保不会向服务器发出垃圾请求;
简单介绍
在ES5之前,window下的undefined是可以被重写的,于是导致了某些极端情况下使用undefined会出现一定的差错。所以,用void 0是为了防止undefined被重写而出现判断不准确的情况。 ES5之后的标准中,规定了全局变量下的undefined值为只读,不可改写的,但是局部变量中依然可以对之进行改写。
非严格模式下,undefined是可以重写的,严格模式则不能重写。
除了防止被重写外,还可以减少字节。void 0代替undefined省3个字节。类似的还有很多常用的写法,下面介绍一些老司机的套路,嘿嘿。
1 | // 取整 |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 webRambler-blog!
评论






