undefined类型的数据没有价值?

时间:2016-04-19 04:17:17

标签: javascript

在JavaScript中,键入“undefined”应该有一个值“undefined”。但是,在下面的这个例子中,未声明的xxx具有“未定义”类型,但显然它没有任何类型的值。由于xxx中没有值,JS抛出异常没有任何区别。为了保持一致,JS应该在typeof xxx上抛出异常。否则,我们在这里有一个很大的逻辑漏洞。

<!DOCTYPE html>
<html>
<body>

<script>
document.write("Type=" + typeof xxx);
document.write(", Value=");
document.write(xxx);
</script>

</body>
</html> 

1 个答案:

答案 0 :(得分:0)

您需要先看看:

在您的示例中,您实际上从未将xxx声明为变量,因此当document.write(xxx)变量xxx不存在时。

var xxx;
document.write("Type=" + typeof xxx);
document.write(", Value=");
document.write(xxx);

声明var xxx;没有值会实例化它,因为它没有分配值,默认分配将是undefined中所述的select