Wie kommentiere ich in CoffeeScript? "/ * This * /" funktioniert nicht

142

Wie können Sie in CoffeeScript Kommentare abgeben?

In der Dokumentation heißt es, dass Sie drei Hash-Symbole verwenden können, um einen Kommentarblock zu starten und zu schließen:

###
  Comments
  go
  here
###

Ich habe festgestellt, dass ich manchmal die folgenden zwei Formate verwenden kann

`// backticks allow for straight-JavaScript,
 // but the closing backtick can't be on a comment line (I think?)
`

Gibt es eine einfachere Möglichkeit, kurze Kommentare in CoffeeScript einzufügen?

Verwenden Sie diesen Stil NICHT **

Da dies viele Ansichten bekommt, möchte ich das betonen

/* Comment goes here */

erzeugt einen MATH-Fehler, wenn sich das /*in einer eigenen Zeile befindet.

Wie Trevor in einem Kommentar zu der Frage betonte, ist dies ein regulärer Ausdruck , KEIN Kommentar!

Eric Hu
quelle
15
Wenn ein /*...*/Kommentar "funktioniert", liegt dies daran, dass der CoffeeScript-Compiler ihn als regulären Ausdruck interpretiert. Auf keinen Fall zu empfehlen!
Trevor Burnham
1
Ich denke also, dass es in CoffeeScript KEINE MÖGLICHKEIT gibt, einen Kommentar innerhalb einer Anweisung (zwischen Zeichen) zu haben?
Pete Alvin

Antworten:

267

Verwenden Sie ein einzelnes # -Zeichen

# like this

Ein Charakter scheint ziemlich minimal zu sein;)

Ebenfalls:

###
This block comment (useful for ©-Copyright info) also gets 
passed on to the browsers HTML /* like this! */
###
Michael Durrant
quelle
4
So möchten Sie normalerweise einen Kommentar abgeben. Der dreifache Hash wird am häufigsten verwendet, wenn der Kommentar in das Javascript fallen soll (normalerweise Copyright-Meldungen).
Aaron Dufour
5
Ah seufz . Die offiziellen Dokumente verwenden das einzelne # -Formular in allen Beispielen, erwähnen es jedoch nie in den Texterklärungen, sondern sprechen nur über die Blockkommentare.
Gerry
1
Leider gibt es keine Möglichkeit, Blockkommentare zu haben, die nicht in der Ausgabe angezeigt werden.
Nilskp
24

Die Hauptmethode zum Kommentieren sind #Kommentare im Stil von sh / Perl / Ruby / ... :

# This comment goes to the end of the line
# and it won't appear in the "compiled"
# JavaScript version.

Sie verwenden die Block - Stil ###Kommentare , wenn Sie einen Kommentar möchten in der JavaScript - Version erscheinen:

Manchmal möchten Sie einen Blockkommentar an das generierte JavaScript weiterleiten. Zum Beispiel, wenn Sie einen Lizenzheader oben in eine Datei einbetten müssen. Blockkommentare, die die Syntax für Heredocs widerspiegeln, bleiben im generierten Code erhalten.

Also, wenn Sie mit beginnen

###
PancakeParser is Public Domain
###

Dann erhalten Sie diesen JavaScript-Kommentar im generierten JavaScript:

/*
PancakeParser is Public Domain
*/
mu ist zu kurz
quelle
4

Hüte dich vor ###! Wenn Sie ### verwenden, um Codeabschnitte zu trennen (wie ich), ist es schrecklich überraschend, wenn dieser Code als Ergebnis nicht mehr funktioniert.

Mark Wilden
quelle
Weißt du, warum? Wir haben den Code lokal, aber nicht auf dem Build-Server mit ###.
Azat
Leider habe ich das vor Monaten bemerkt und bin gerade nicht "in diesem Raum", um es mir anzusehen.
Mark Wilden
10
Weil ein Paar einen Blockkommentar macht?
3
Wäre nicht so überraschend, wenn Sie einen Syntax-Hervorhebungs-Editor mit Kommentaren in einer anderen Farbe verwenden würden
Nick Perkins
4
Warum abstimmen? Es ist eine gültige Warnung. Es heißt wirklich, dass Sie keine durchgezogene Linie von # als Trennzeichen verwenden, da sonst gelegentlich unausgeglichene Blockkommentarpaare auftreten können.
Jim Mack