JavaScript - 检查变量是不是存在[重复]

Posted

技术标签:

【中文标题】JavaScript - 检查变量是不是存在[重复]【英文标题】:JavaScript - Check to see if variable exists [duplicate]JavaScript - 检查变量是否存在[重复] 【发布时间】:2014-01-20 09:05:07 【问题描述】:

我有一个名为 index.js 的 javascript 文件。这个 javascript 文件提供了与 index.html 相关的程序代码。我的 index.html 文件非常基本。如下所示:

<!DOCTYPE html>
<html>
    <body>
        <script type="text/javascript" src="index.js"></script>
        <script type="text/javascript">
@if (ViewBag.IsGood()) 
  <text>
            INFORMATION =  version: '<%= version%>', timestamp: '<%= timestamp%>' ;
  </text>

          runInit();
        </script>
    </body>
</html>

在我的 index.html.js 文件中,我有以下内容

function runInit() 
  if (INFORMATION === undefined) 
    INFORMATION =  version: 'Unknown' ;
  

  // Keep going 

如您所见,有时会设置 INFORMATION。有时,它不会。设置 INFORMATION 后一切正常。如果未设置,我会收到一条错误消息,显示“ReferenceError:找不到变量:INFORMATION”。我对此感到困惑,因为我想我正在检查该属性是否正确存在。显然,我不是。

在 JavaScript 中,如何确保变量存在?这是我最关心的问题。我不想重新排列我的代码。我真的很想这样做。我觉得我做得对。但是,我仍然收到错误消息。

谢谢。

【问题讨论】:

你在哪里包含index.html.js?你确定你的HTML里的src="index.html"没有错吗? if (typeof(INFORMATION)=='undefined') @ComFreek - 已修复。对不起。 【参考方案1】:

您可以使用typeof operator:

就是这样

typeof foo; //returns "undefined";

所以检查是否有未定义的东西

if(typeof INFORMATION==="undefined")
    INFORMATION=version:"Unknown";

【讨论】:

以上是关于JavaScript - 检查变量是不是存在[重复]的主要内容,如果未能解决你的问题,请参考以下文章

Function.keys 检查变量数据是不是存在[重复]

JQuery / Javascript:检查var是不是存在[重复]

仅使用javascript检查由javascript创建的元素是不是存在[重复]

如何检查变量是不是存在[重复]

如何检查javascript中的对象中是不是存在键[重复]

检查变量是不是只是JavaScript中的整数的最佳方法[重复]