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!


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! */
###

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
*/

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.


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
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.