【发布时间】:2013-05-25 16:31:27
【问题描述】:
我想知道为什么 YUI 库使用Y.Lang.isUndefined(),即使 JS 具有检查变量类型的内置功能。
【问题讨论】:
标签: javascript yui
我想知道为什么 YUI 库使用Y.Lang.isUndefined(),即使 JS 具有检查变量类型的内置功能。
【问题讨论】:
标签: javascript yui
存在该方法的原因是为了 API 的一致性——YUI 团队认为将其排除在外会很奇怪。正如 LightStyle 指出的那样,isUndefined() 并没有做任何特别的事情,所以除非你真的喜欢美学,否则你可能不应该使用它。
事实上,只有少数 YUI 类型检查方法可以做任何实际有用的工作,超出了您本机可以做的工作。 Ryan Grove 在他的演讲When Not To Use YUI (youtube.com)
中详细介绍了这些方法(以及为什么应该避免使用其中的大多数方法)【讨论】:
在我看来没有真正的原因,只是出于开发目的(更容易调用编写typeof myVar === 'undefined'的函数)。
L.isUndefined = function(o) {
return typeof o === 'undefined';
};
来自YUI.js source - 第 1973 行
【讨论】: