Jshint: Fordern Sie die Option an, das Semikolon zu unterdrücken

Erstellt am 15. Sept. 2011  ·  7Kommentare  ·  Quelle: jshint/jshint

Hallo,

Ich habe gerade angefangen, JSHint zu verwenden, und es hat mehrere Probleme gefunden. In meinem Programmierstil scheint es jedoch, dass ich Semikolons an Stellen platziere, an denen dies in JavaScript nicht erforderlich ist (ein Überbleibsel aus der Programmierung in anderen Sprachen, wo dies erforderlich ist, nehme ich an).

Wäre es möglich, eine Option hinzuzufügen, um Meldungen zu unterdrücken, wie z. B.: "Zeile 190 }; Unnötiges Semikolon."

Danke.

Hilfreichster Kommentar

Ich habe die Option gefunden, die Warnung zu ignorieren:
fügen Sie Folgendes zur .jshintrc-Datei hinzu. Ich benutze sublimelinter-jshint, es funktioniert.

"-W032": false

https://jslinterrors.com/unnecessary-semicolon
http://kuljit.co.uk/configuring-jshint-with-a-jshintrc-configuration-file/

Alle 7 Kommentare

Ich würde gerne deinen Code sehen. Wenn ein Semikolon in JS unnötig ist, ist es grundsätzlich in allen anderen C-ähnlichen Sprachen unnötig. Wahrscheinlich. Fühlen Sie sich frei, mir das Gegenteil zu beweisen.

JSHint ist hier, um Ihnen bei der Behebung solcher Fehler zu helfen, nicht um sie zu ignorieren.

a) "Andere Sprachen", nicht "andere C-ähnliche Sprachen".

b) Es ist kein Fehler. Es läuft gut in allen Browsern, in denen ich teste. Sogar der Sinn der Meldung "Unnötiges Semikolon", anstatt "Ungültiges Semikolon" zu sagen, sagt, dass es kein Fehler ist. Ist es nicht der Sinn von JSHint, das Testen auf Nicht-Fehler vom Programmierer auswählbar zu machen? Ist das nicht der Grund, warum JSHint überhaupt von JSLint abgezweigt wurde?

Ist es dann so, dass ein Lint-ähnliches Programm, das Sie zwingt, "{" und "}" hinzuzufügen, wenn es nicht benötigt wird, schlecht ist, aber eines, das Sie zwingt, ";" zu entfernen? wenn nicht benötigt ist gut? Wessen Wahl sollte das sein?

Ja, es ist kein Fehler. Der Browser analysiert es einfach als leere Anweisung.

Ja, du hast Recht, wir sollten einfach eine Option hinzufügen, um jeden Code zu akzeptieren und zu sagen, dass es gut funktioniert.

Im Ernst, wofür verwenden Sie JSHint, wenn nicht, um kleine Fehler zu erkennen, die der Browser nicht erkennt?

Ach ja, und aus reiner Neugier, welche Sprachen sind Sie gewohnt? Mir fällt keine Sprache mit Semikolons ein, die nicht C-ähnlich ist.

Das Ziel von JSHint ist es jedoch, alle möglichen Fehler für Sie aufzufangen, wenn eine Person jedoch glaubt, dass sie es besser weiß – mehr Macht für sie. Ich arbeite daran, den Leuten zu erlauben, jede Warnung in JSHint auszuschalten, während ich gleichzeitig einen sehr sicheren (und strengen) Satz von Standardeinstellungen bereitstelle.

@alpha123 , ich fühle dich, aber verschiedene Leute verwenden das Tool für verschiedene Zwecke. Wenn jemand es _nur_ zum Fangen von undichten Globals verwenden will – nun, ich habe nichts gegen diesen Ansatz, auch wenn ich es selbst nicht befürworte.

@SidNM , danke für das Ticket. Ich schließe es, da ich bereits an einer Lösung arbeite, die das beinhaltet, was hier gefragt wurde.

"Mir fällt keine Sprache mit Semikolons ein, die nicht C-ähnlich ist"
Nun, hier ist einer: Delphi (Pascal)

Wurde das jemals umgesetzt? Es ist fast drei Jahre alt und ich habe immer noch das gleiche Problem. Wenn die umfassende Lösung nicht so bald kommt, könnte die einfache Lösung in der Zwischenzeit implementiert werden? Ich möchte unnötige Semikolon-Warnungen global deaktivieren, aber die entscheidenden fehlenden Semikolon-Warnungen belassen, die echte Probleme verursachen könnten.

Ich habe die Option gefunden, die Warnung zu ignorieren:
fügen Sie Folgendes zur .jshintrc-Datei hinzu. Ich benutze sublimelinter-jshint, es funktioniert.

"-W032": false

https://jslinterrors.com/unnecessary-semicolon
http://kuljit.co.uk/configuring-jshint-with-a-jshintrc-configuration-file/

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen