【问题标题】:Y.Lang.isUndefined vs typeof undefined, which is better and why?Y.Lang.isUndefined vs typeof undefined,哪个更好,为什么?
【发布时间】:2013-05-25 16:31:27
【问题描述】:

我想知道为什么 YUI 库使用Y.Lang.isUndefined(),即使 JS 具有检查变量类型的内置功能。

【问题讨论】:

    标签: javascript yui


    【解决方案1】:

    存在该方法的原因是为了 API 的一致性——YUI 团队认为将其排除在外会很奇怪。正如 LightStyle 指出的那样,isUndefined() 并没有做任何特别的事情,所以除非你真的喜欢美学,否则你可能不应该使用它。

    事实上,只有少数 YUI 类型检查方法可以做任何实际有用的工作,超出了您本机可以做的工作。 Ryan Grove 在他的演讲When Not To Use YUI (youtube.com)

    中详细介绍了这些方法(以及为什么应该避免使用其中的大多数方法)

    【讨论】:

      【解决方案2】:

      在我看来没有真正的原因,只是出于开发目的(更容易调用编写typeof myVar === 'undefined'的函数)。

      L.isUndefined = function(o) {
          return typeof o === 'undefined';
      };
      

      来自YUI.js source - 第 1973 行

      【讨论】:

        猜你喜欢
        • 2012-10-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-10-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-01-09
        相关资源
        最近更新 更多