Bagaimana cara saya mengomentari CoffeeScript? “/ * This * /” tidak berfungsi

142

Dengan cara apa Anda bisa berkomentar di CoffeeScript?

Dokumentasi mengatakan Anda dapat menggunakan tiga simbol hash untuk memulai dan menutup blok komentar:

###
  Comments
  go
  here
###

Saya menemukan bahwa saya kadang-kadang dapat menggunakan dua format berikut

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

Apakah ada cara yang lebih sederhana untuk menyisipkan komentar pendek dalam CoffeeScript?

JANGAN gunakan gaya ini **

Karena ini mendapatkan banyak pandangan, saya ingin menekankan itu

/* Comment goes here */

menghasilkan kesalahan MATH ketika /*ada di jalurnya sendiri.

Seperti yang Trevor tunjukkan dalam komentar pada pertanyaan, ini adalah ungkapan reguler , BUKAN komentar!

Eric Hu
sumber
15
Jika /*...*/komentar "berfungsi," itu karena kompiler CoffeeScript menafsirkannya sebagai sebuah regex. Jelas tidak direkomendasikan!
Trevor Burnham
1
Jadi saya kira TIDAK ADA CARA di CoffeeScript untuk memiliki komentar intra-pernyataan (antar karakter)?
Pete Alvin

Jawaban:

267

Gunakan satu tanda #

# like this

Satu karakter tampak sangat minim;)

Juga:

###
This block comment (useful for ©-Copyright info) also gets 
passed on to the browsers HTML /* like this! */
###
Michael Durrant
sumber
4
Ini biasanya bagaimana Anda ingin berkomentar; triple hash paling sering digunakan ketika Anda ingin komentar masuk ke javascript (biasanya pesan hak cipta).
Aaron Dufour
5
Ah menghela nafas . Dokumen resmi menggunakan formulir # tunggal melalui contoh mereka, tetapi tidak pernah benar-benar menyebutkannya dalam penjelasan teks, itu hanya berbicara tentang komentar blok.
Gerry
1
Sayangnya tidak ada cara untuk memblokir komentar yang tidak muncul dalam output.
nilskp
24

Cara utama untuk berkomentar adalah komentar gaya sh / Perl / Ruby / ... #:

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

Anda menggunakan komentar gaya blokir### saat Anda ingin komentar muncul di versi JavaScript:

Terkadang Anda ingin meneruskan komentar blokir ke JavaScript yang dihasilkan. Misalnya, ketika Anda harus menyematkan tajuk lisensi di bagian atas file. Blokir komentar, yang mencerminkan sintaks untuk heredocs, dipertahankan dalam kode yang dihasilkan.

Jadi, jika Anda mulai dengan

###
PancakeParser is Public Domain
###

maka Anda akan mendapatkan komentar JavaScript ini dalam JavaScript yang dibuat:

/*
PancakeParser is Public Domain
*/
mu terlalu pendek
sumber
4

Hati-hati terhadap ###! Jika Anda menggunakan ### untuk memisahkan bagian kode (seperti yang saya lakukan), sangat mengejutkan ketika kode tersebut berhenti berfungsi sebagai hasilnya.

Mark Wilden
sumber
Apa kamu tahu kenapa? Kami memiliki kode yang berfungsi secara lokal tetapi tidak pada server build dengan ###.
Azat
Sayangnya, saya memperhatikan ini bulan lalu, dan saya tidak "di ruang itu" sekarang untuk melihatnya.
Mark Wilden
10
Karena pasangan membuat komentar blok?
3
Tidak akan terlalu mengejutkan jika Anda menggunakan editor yang menyoroti sintaksis, dengan komentar muncul dalam warna yang berbeda
Nick Perkins
4
Mengapa downvote? Ini peringatan yang valid. Sungguh, katanya jangan menggunakan garis padat # sebagai pemisah bagian, atau Anda kadang-kadang bisa mendapatkan pasangan komentar blok tidak seimbang.
Jim Mack