【问题标题】:Why is the variable undefined?为什么变量未定义?
【发布时间】:2011-11-22 15:59:14
【问题描述】:

这是我的代码

<script type="text/javascript">

    var options = {
        chart: {
            renderTo: 'container'
        },
        title: {
            text: 'Money Conversion'
        },
        yAxis: {
            title: {
                text: 'Exchange Rate'
            }
        },
        xAxis: {
            type: 'datetime',
            dateTimeLabelFormat: {
            }
        },
        series: [{
            type: 'line',
            data: []
        }]
    };

    $(document).ready(function () {

        if (typeof options != 'undefined') {
            alert("options is undefined!");
        }
        else {
            alert("options is defined!");
        }

我收到的警报是“选项未定义”。我做错了什么?

【问题讨论】:

  • 哇,谢谢大家!我不敢相信我错过了......
  • +1(抵消)我不明白为什么这被否决了。它说明了我自己多次犯下的一个共同疏忽。
  • @Bob Kaufman:这确实是一个您可以轻松分析自己​​的问题示例。即通过检查为什么 if 子句通过 - 原因不能是别的 - 答案就在那里......“不是未定义”
  • @pimvdb 我想我们都遇到过这样的情况:我们一直在看同一段代码太久而无法思考。

标签: javascript jquery variables undefined


【解决方案1】:
    if (typeof options != 'undefined') {
        alert("options is undefined!");
    }

You're alerting 'options is undefined' when options is defined.

【讨论】:

  • +1哈哈哈哈。这是一个很大的失误^_^
【解决方案2】:

您正在测试它的不等式。改用 == :)

【讨论】:

    【解决方案3】:
    if (typeof options != 'undefined') {
    

    表示选项已定义

    if (typeof options == 'undefined') {
    

    【讨论】:

      【解决方案4】:

      您的操作员是不是搞错了?不应该是这样吗?

          if (typeof options == 'undefined') {
              alert("options is undefined!");
          }
          else {
              alert("options is defined!");
          }
      

      【讨论】:

        【解决方案5】:
         $(document).ready(function () {
        
                if (typeof options === 'undefined') {
                    alert("options is undefined!");
                }
                else {
                    alert("options is defined!");
                }
        

        【讨论】:

          【解决方案6】:

          因为!= 运算符?也许将其更改为==?还是我错过了什么?

          【讨论】:

            【解决方案7】:

            if 语句中的运算符不正确。应该是:

            if (typeof options == 'undefined') 
            {        
                alert("options is undefined!");     
            }    
            else 
            {         
                alert("options is defined!");     
            } 
            

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2014-12-05
              • 2017-07-04
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多