私は、ブラウザの違いを考慮に入れて関数のランタイム割り当てを使用しています。しかし、サポートされていないブラウザでは、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](http://jshint.com/)が空のブロックを許容するためのオプションを持って、私はjslintは、そのオプションを持っているとは思いません。 – epascarello
Jslintは明示的で読みやすいものが好きなので、あなたは未定義に戻ると思います。 –