当然a===void 0并不是固定形式,只能说存在类似形式的应用。
下面介绍一下它的作用是什么。
a===void 0
上述代码通常用来判断a是否等于undefined。
有些人可能会问为什么不直接写下面形式:
a === undefined
因为undefined在JavaScript中并不属于保留字或者关键字,IE8和IE8以下浏览器中可以对其进行赋值。
在其他标准浏览器中是无法对undefined进行赋值。
所以a===void 0这种写法是为了绝对保证a是undefined,因为void无论后面的运算数是什么,返回值都是纯正的undefined。