void运算符

void 运算符会执行其内容,并总是返回undefined

  • void()函数同理
  • 可用于防止全局变量中的undefined已被重定义为其他内容
    其实undefinedNaNInfinity 都只是全局对象 window 的属性,可以被赋值。只不过writable设置成了false,所以赋值无效
  • 在函数前加void等于强制让函数返回值为undefined
  • 立即调用的函数表达式
    在使用立即执行的函数表达式时,可以利用 void 运算符让 JavaScript 引擎把一个function关键字识别成函数表达式而不是函数声明(语句)。
void function iife() {
    var bar = function () {};
    var baz = function () {};
    var foo = function () {
        bar();
        baz();
     };
    var biz = function () {};

    foo();
    biz();
}();
  • JavaScript URIs
    当用户点击一个 javascript:格式的URI 时,它会执行URI中的代码,然后用返回的值替换页面内容,除非返回的值是undefined
<a href="javascript:void(0);">
  这个链接点击之后不会做任何事情,如果去掉 void(),
  点击之后整个页面会被替换成一个字符 0。
</a>
<p> chrome中即使<a href="javascript:0;">也没变化,firefox中会变成一个字符串0 </p>
<a href="javascript:void(document.body.style.backgroundColor='green');">
  点击这个链接会让页面背景变成绿色。
</a>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容