• 1.摘要
  • 2.基本信息
  • 3.主要内容
  • 4.应用领域
  • 5.相关术语
  • 6.参考资料

undefined

2
程序语句

undefined,中文名为“未定义”,是一个特殊值,通常用于指示变量尚未赋值。在高级程序设计语言设计应用程序时,用于指示变量尚未用单等号进行赋值(常量未定义);在Web开发利用JavaScript时,undefined是全局对象的一个属性,是全局作用域的一个变量,其最初值就是原始数据类型undefined。

基本信息

  • 中文名

    未定义

  • 外文名

    undefined

  • 解释

    一个特殊值

  • 定义代码

    typeof

主要内容

程序变量未赋值

表示“未定义”,一个特殊值,通常用于指示变量尚未赋值。对未定义值的引用返回特殊值“未定义”。类型定义代码 typeof(undefined) 返回未定义字符串。

当将“未定义”转换为字符串时,它转换为空字符串。

“未定义”值与特殊值null(空)相似。事实上,当使用相等运算符对null(空)和“未定义”进行比较时,它们的比较结果为相等。

应用领域

1/3

在这个示例中,变量 x 尚未声明,所以其值为未定义。在代码的第一部分,使用相等运算符 (==) 比较 x 的值与值“未定义”,并将相应的结果发送到输出窗口。在代码的第二部分,使用相等运算符比较值null(空)与“未定义”。

123456789

/*

变量x“未声明”。

*/

trace("x的值为"+x);

if(x==undefined)/*如果变量X为未定义*/{

trace("x是未定义的。");

}else/*否则*/{

trace("x不是未定义的。");

}

123456

trace("类型定义(x)为"+类型定义(x))

;if(null==undefined)/*如果空等于未定义*/{

trace("空null和未定义undefined都相等");

}else/*否则*/{

trace("空null和未定义undefined都不相等");

}

下面的结果显示在输出窗口中:

x的值是X是未定义

类型定义(x)是未定义

空null和未定义undefined都相等

注意:在ECMA-262 规范中,将 undefined 转换为字符串“undefined”,而不转换为空字符串。这是动作脚本与 ECMA-262 规范之间的差异。

相关术语

null的类型是一个对象,用来表示一个变量没有任何数值,而是指变量没有定义任何值。1 

在JavaScript中,关键字null表示空值的意思,它表示对象为空,或者变量没有引用任何对象。如果当一个变量的值为null,则表明它的值不是有效的对象、数组、数值、字符串和布尔型等。如果使用alert(typeof(null))来检测null值的类型,则返回object,说明它是一个对象类型。

而与null不同,它表示无值的意思,并且具有独一无二的类型,它区别任何对象、数组、数值、字符串和布尔型。alert(typeof())的返回值为。2