首页  >  文章  >  web前端  >  JavaScript 中未定义和未定义有什么区别?

JavaScript 中未定义和未定义有什么区别?

王林
王林转载
2023-08-24 12:45:161823浏览

JavaScript 中未定义和未定义有什么区别?

在 JavaScript 中,变量“未定义”有两种主要方式。第一种是声明变量而不给它赋值时。第二种是当您尝试访问不存在的变量时。

JavaScript 中未定义

  • 当声明变量时没有值,它会被自动赋予值“未定义”。如果您忘记为变量赋值,或者故意不赋值(例如,如果您正在等待用户输入),则可能会发生这种情况。

  • 如果您尝试访问不存在的变量,您也会得到“undefined”值。如果您键入变量的名称,或者尝试访问超出范围的变量,则可能会发生这种情况。

示例 1

下面是带有解释的示例。

<html>
<head>
   <title>Examples</title>
</head>
<body>
   <div id="result"></div>
   <script>
      var foo;
      document.getElementById("result").innerHTML = foo;
   </script>
</body>
</html>

在上面的示例中,声明了变量“foo”,但未给定值。因此,当我们尝试访问它时,会返回“undefined”值。

示例2

<html>
<head>
   <title>Examples</title>
</head>
<body>
   <div id="result"></div>
   <script>
      var myObj = {};
      document.getElementById("result").innerHTML = myObj.foo;
   </script>
</body>
</html>

在上面的示例中,我们尝试访问对象“myObj”的属性“foo”。但是,由于该属性不存在,因此返回“undefined”值。

JavaScript 中未定义

“not 已定义”值类似于“未定义”,因为它表示变量不存在。但是,两者之间存在细微差别。

“未定义”通常是由拼写错误或尝试访问超出范围的变量引起的。 “未定义”通常是由于忘记给变量赋值而引起的。

示例

下面是带有说明的示例。

<html>
<head>
   <title>Examples</title>
</head>
<body>
   <div id="result"></div>
   <script>
      var myObj = {};
      try {
         document.getElementById("result").innerHTML = myOb.foo;
      }
      catch(err) {
         document.getElementById("result").innerHTML = err;
      }
   </script>
</body>
</html>

在上面的示例中,我们尝试访问对象“myOb”的属性“foo”。但由于该对象不存在,因此返回“myOb is not Define”的ReferenceError。

undefined和not Define的区别

未定义”和“未定义”之间的主要区别在于,“未定义”是可以分配给变量的值,而“

另一个区别是,“未定义”通常是由于忘记给变量赋值而导致的,而“未定义”通常是由拼写错误或错误引起的尝试访问超出范围的变量。

结论

结论是,“未定义”和“未定义” >”是 JavaScript 中的两个不同值。 “未定义”表示变量已声明但未赋值,“未定义”表示变量不存在。

以上是JavaScript 中未定义和未定义有什么区别?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:tutorialspoint.com。如有侵权,请联系admin@php.cn删除