Ich habe mein JavaScript mit JSLint seit ungefähr 2 Jahren validiert und ab und zu gibt es Regeln, die sich ändern. Im Allgemeinen, wenn JSLint eine neue Regel einführt, gibt es ein Kontrollkästchen, um diese Regel beim Analysieren zu ignorieren, oder wenn Sie sie nicht ignorieren möchten, um Ihren Code damit kompatibel zu machen.Warum wurden die neuen JSLint-Fehler "Leerzeichen, keine Tabs" und "unsicheren Zeichen" eingeführt?
Als ich meine JSLint Validierung heute läuft, aber ich laufe in diese beiden neuen Fehler:
Benutzen Sie Leerzeichen, nicht Registerkarten.
Dies ist nicht der Fehler "Mischen von Tabs und Leerzeichen". Ich benutze nur Tabs. Dies ist eine kürzlich geänderte Version von "Mischen von Tabs und Leerzeichen", die Tabs generell nicht mehr erlaubt.
Und:
Unsafe Charakter.
*/
Unsicheres Zeichen.
_const: {
Es gibt keine neue Optionen zu ignorieren. Ich kann nicht verstehen, was unsicher ist über das Schließen eines Blockkommentars, warum es _const: {als unsicher, wenn ich nomen: true
, (dangling _ in Bezeichnern) oder warum sollte ich plötzlich von Leerzeichen zu Tabs wechseln, wenn ich noch über die Konfiguration habe Einrücken von 4 Leerzeichen ist ein Tab.
Hat jemand eine Idee, warum diese eingeführt wurden, um zumindest zu verhindern, dass JSLint diese neuen Regeln ignoriert?
Update: Die Messy White Space
Option funktioniert, um das Problem, aber es wäre anderes unerwartetes Verhalten verursachen:
if (condition) {
// ^-- there is a space but it won't indicate an error
Bitte poste deine Linter Config. – oleq
*/wird in JSLint als unsicher erachtet, weil der Ersteller von JSLint glaubt, dass es // sicherer ist, // Kommentare in jeder Zeile zu verwenden, anstatt Kommentare zu blockieren, da die Gefahr besteht, dass Sie versehentlich "* /" in Ihren Kommentar schreiben und schließe den Block zu früh. Persönlich ignoriere ich es. – Dawn
@Dawn Ich bekomme es nicht nur bei dieser Linie, ich werde mit einem anderen aktualisieren, wo es noch weniger Sinn macht. –