Utilizzo un'assegnazione delle funzioni in fase di esecuzione per tenere conto delle differenze tra browser. Tuttavia, per i browser non supportati, voglio restituire una funzione vuota in modo che non venga generato un errore JavaScript.Come restituire correttamente una funzione vuota?
Ma, jslint si lamenta delle funzioni vuote. Qual è il modo felice di jslint per farlo?
Blocco vuoto.
$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/) ha un'opzione di tollerare blocchi vuoti, non credo JSLint ha questa opzione. – epascarello
Jslint piace che le cose siano esplicite e facili da leggere, quindi penso che si aspetta che tu ritorni indefinito. –