viod 0是什么?

之前在牛客网上看到别人用viod 0来代替undefined,所以我去网上搜了一下,MDN是这么说的:

这个运算符能向期望一个表达式的值是undefined的地方插入会产生副作用的表达式。
void 运算符通常只用于获取 undefined的原始值,一般使用void(0)(等同于void 0)。在上述情况中,也可以使用全局变量undefined来代替(假定其仍是默认值)。

 这时候我看到viod(0),以前看到不想让a链接跳转的话把href设成javascript:void(0),以前都没考虑过为何要这么写,今天才知道原来void是个运算符。

<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>

  viod 0 === viod(0)

好记性不如烂笔头,看到自己觉得应该记录的知识点,结合自己的理解进行记录,用于以后回顾。
原文地址:https://www.cnblogs.com/wangxi01/p/8001090.html