Warum jammert JSLint über "Unerwartetes" anderes "nach" Rückkehr ""?
JSLint beschwert sich, dass die folgenden (nutzloses Beispiel -) code ist ungültig:
(function (x) {
"use strict";
if (x === 1) {
return 1;
} else if (x === 2) {
return -1;
}
return 0;
}(1));
Fehler:
Problem bei Zeile 4 Zeichen 9: Unexpected 'else' nach 'return'.return 1;
Ist es ernsthaft darauf hindeutet, dass es schlecht zu bedienen return-Anweisungen innerhalb einer if/else-Struktur?
Denkt, dass es diese version in Ordnung ist:
(function (x) {
"use strict";
var returnval = 0;
if (x === 1) {
returnval = 1;
} else if (x === 2) {
returnval = -1;
}
return returnval;
}(1));
InformationsquelleAutor der Frage Hal | 2012-02-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es ist nur sagen Sie, dass
else
nachreturn
ist überflüssig. Folgendes ist in Ordnung:InformationsquelleAutor der Antwort georg
Was ich gefunden habe, w/jslint ist, dass, wenn Sie sich an die Regeln halten - 50% sind lächerlich noch keine negativen Auswirkungen auf Ihren code. Die anderen 50% ( oder so ) geben Ihnen einen guten Vorteil. So tun es für die anderen 50%. Dieses Beispiel zwingt Sie, sich explizit über die inverse einer Bedingung oder ähnlich...anstelle von wodurch es implizit mit einer anderen...gleiche gilt für wenn /was ich meine.
InformationsquelleAutor der Antwort morph_master_flex
Es ist besser, eine Funktion immer wieder etwas, wie es fügt Konsistenz. JSLint ist bekannt, dass sehr strenge und verletzen Programmierer' Gefühle. Helfen kann es. Ich persönlich denke version 1 ist in Ordnung
InformationsquelleAutor der Antwort Jaseem