说实话,它们之间的区别挺明显的,我们一般认为undefined是JavaScript提供的一个“关键字”,而“undefined”却是一个字符串,只是引号的内容和undefined一样。
- undefined是JavaScript的一个“已定义”的全局变量值,而不是他的字面意思所表达的未定义。
- undefined是脚本引擎定义的一个常量,它在脚本引擎初始化完毕后存在。
- undefined的实际作用表示一个已定义的变量的未初始化状态。
<!DOCTYPE html>
<html>
<head>
<title>比较undefined和“undefined”</title>
</head>
<body>
<center>
<h1>比较undefined和“undefined”</h1>
<hr>
<br>
<h5>显示如下信息……</h5>
<pre>
<script type="text/javascript">
with(document) {
// writeln(variable);//打印未声明的变量会出错
writeln('undefined');//打印“undefined”字符串
writeln(undefined);//打印undefined变量 writeln(typeof 'undefined');//打印字符串“undefined”的类型
writeln(typeof undefined);//打印undefined变量的类型
writeln(typeof variable);//打印未声明的变量的类型
}
</script>
</pre>
</center>
</body>
</html>