【发布时间】:2013-06-06 05:44:37
【问题描述】:
我正在使用函数的运行时分配来解决浏览器的差异。但是对于不受支持的浏览器,我想返回一个空函数,这样就不会抛出 JavaScript 错误。
但是,jslint 抱怨空函数。 jslint 的快乐方式是什么?
空块。
$R.functionNull = function () {
// events not supported;
};
$R.Constructor.prototype.createEvent = (function () {
if (doc.createEvent) {
return function (type) {
var event = doc.createEvent("HTMLEvents");
event.initEvent(type, true, false);
$NS.eachKey(this, function (val) {
val.dispatchEvent(event);
});
};
}
if (doc.createEventObject) {
return function (type) {
var event = doc.createEventObject();
event.eventType = type;
$NS.eachKey(this, function (val) {
val.fireEvent('on' + type, event);
});
};
}
return $R.functionNull;
}());
【问题讨论】:
-
JSHint 有一个允许空块的选项,我不认为 jslint 有这个选项。
-
Jslint 喜欢明确且易于阅读的内容,因此我认为它希望您返回 undefined。
标签: javascript jslint