有人能告诉我 JavaScript 中未定义的类型是什么吗? typeof(undefined) 会返回什么?
什么是未定义?
在 JavaScript 中,存在未定义(类型)、未定义(值)和未定义(变量)。
Type:
Undefined(类型)是一种内置的 JavaScript 类型。
Value:
未定义(值)是一个原语,是唯一的值
未定义类型。任何尚未赋值的属性,
假定未定义的值。 (ECMA 4.3.9 和 4.3.10)。一个功能
没有 return 语句,或者返回值为空的函数
语句返回未定义。未提供的函数的值
参数未定义。
多变的:
未定义(变量)是一个全局属性,其初始值为
未定义(值),由于它是一个全局属性,我们也可以访问它
作为变量。为了保持一致性,我总是将其称为变量
在本文中。
空的区别:
Undefined 与 null 不同,null 也是一个原始值
表示故意缺少某个值。唯一的相似之处
在 undefined 和 null 之间,它们都强制为 false。
那么什么是引用错误呢?
ReferenceError 表示检测到无效的参考值 (ECMA 5 15.11.6.3)
实际上,这意味着当 JavaScript 尝试获取某个值时,将抛出 ReferenceError无法解决的参考。
请注意消息语法在不同浏览器之间的差异。正如我们将看到的,这些消息都不是特别有启发性:
alert(foo);
//FF/Chrome: foo is not defined
//IE: foo is undefined
//Safari: can't find variable foo
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)