Làm thế nào để tôi nhận xét trong CoffeeScript? Cuốn / * này * / không hoạt động


142

Những cách bạn có thể nhận xét trong CoffeeScript?

Tài liệu nói rằng bạn có thể sử dụng ba biểu tượng băm để bắt đầu và đóng một khối nhận xét:

###
  Comments
  go
  here
###

Tôi thấy rằng đôi khi tôi có thể sử dụng hai định dạng sau

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

Có cách nào đơn giản hơn để chèn bình luận ngắn trong CoffeeScript không?

KHÔNG sử dụng kiểu này **

Vì điều này đang nhận được rất nhiều lượt xem, tôi muốn nhấn mạnh rằng

/* Comment goes here */

tạo ra lỗi MATH khi /*nó nằm trên dòng riêng của nó.

Như Trevor đã chỉ ra trong một nhận xét về câu hỏi, đây là một biểu thức thông thường , KHÔNG phải là một nhận xét!


15
Nếu một /*...*/bình luận "hoạt động", đó là vì trình biên dịch CoffeeScript đang diễn giải nó như một biểu thức chính quy. Chắc chắn không nên!
Trevor Burnham

1
Vì vậy, tôi đoán KHÔNG CÓ CÁCH NÀO trong CoffeeScript để có một nhận xét nội bộ (giữa các ký tự)?
Pete Alvin

Câu trả lời:


267

Sử dụng một dấu #

# like this

Một nhân vật có vẻ khá tối thiểu;)

Cũng thế:

###
This block comment (useful for ©-Copyright info) also gets 
passed on to the browsers HTML /* like this! */
###

4
Đây thường là cách bạn sẽ muốn bình luận; hàm băm ba thường được sử dụng nhất khi bạn muốn bình luận rơi vào javascript (thông thường bản quyền, thông thường).
Aaron Dufour

5
Ah thở dài . Các tài liệu chính thức sử dụng mẫu # duy nhất thông qua các ví dụ của họ, nhưng thực sự không bao giờ đề cập đến nó trong phần giải thích văn bản, nó chỉ nói về các bình luận khối.
Gerry

1
Thật không may, không có cách nào để có các bình luận chặn không xuất hiện trong đầu ra.
nilskp

24

Cách chính để bình luận là sh / Perl / Ruby / ... phong cách #bình luận:

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

Bạn sử dụng nhận xét kiểu khối### khi bạn muốn nhận xét xuất hiện trong phiên bản JavaScript:

Đôi khi, bạn muốn chuyển một nhận xét khối cho JavaScript được tạo. Ví dụ: khi bạn cần nhúng tiêu đề cấp phép ở đầu tệp. Chặn các bình luận, phản ánh cú pháp cho heredocs, được giữ nguyên trong mã được tạo.

Vì vậy, nếu bạn bắt đầu với

###
PancakeParser is Public Domain
###

sau đó bạn sẽ nhận được nhận xét JavaScript này trong JavaScript được tạo:

/*
PancakeParser is Public Domain
*/

4

Coi chưng ###! Nếu bạn sử dụng ### để tách các phần mã (như tôi làm) thì thật đáng ngạc nhiên khi mã đó ngừng hoạt động.


Bạn có biết tại sao? Chúng tôi có mã làm việc cục bộ nhưng không có trên máy chủ xây dựng với ###.
Azat

Thật không may, tôi đã nhận thấy điều này vài tháng trước và bây giờ tôi không "ở trong không gian đó" để xem nó.
Đánh dấu Wilden

10
Bởi vì một cặp làm cho một bình luận khối?

3
Sẽ không quá ngạc nhiên nếu bạn sử dụng một trình soạn thảo làm nổi bật cú pháp, với các bình luận xuất hiện trong một màu khác
Nick Perkins

4
Tại sao downvote? Đó là một cảnh báo hợp lệ. Thực sự, nó nói rằng không sử dụng một dòng # làm dấu phân cách phần, hoặc đôi khi bạn có thể nhận được các cặp nhận xét khối không cân bằng.
Jim Mack
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.