众所周知,当声明一个变量,并且没有给赋值的情况下,它的初始值是 undefined
。
但是在javascript中,怎么检查一个值是否为 undefined
呢?
在现代浏览器中,你可以安全的直接比较将变量是与 undefined
进行比较
if (name === undefined) { //... }
一些人反对直接使用 undefined
变量进行比较,因为在旧的浏览器中它允许被重新赋值,像下面这样:
undefined = "test"
在被重新赋值后,直接使用 undefined
将不能正确的检测一个变量是否被赋值。
然而,这一行为在2009年的ECMAScript 5被修复了。
标签:false,undefined,javascript,浏览器,赋值,重写,变量 From: https://www.cnblogs.com/vickylinj/p/1797396315.1.1.3 undefined
The value of undefined is undefined (see 8.1). This property has the attributes { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: false }.undefined
的值是undefined
。这个属性有不可写,不可枚举,不可配置的特性。