¿Cómo hago un comentario en CoffeeScript? "/ * This * /" no funciona

142

¿De qué maneras puedes comentar en CoffeeScript?

La documentación dice que puede usar tres símbolos hash para iniciar y cerrar un bloque de comentarios:

###
  Comments
  go
  here
###

He descubierto que a veces puedo usar los siguientes dos formatos

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

¿Hay una manera más simple de insertar comentarios cortos en CoffeeScript?

NO use este estilo **

Dado que esto está obteniendo muchas vistas, quiero enfatizar que

/* Comment goes here */

produce un error MATH cuando el /*está en su propia línea.

Como Trevor señaló en un comentario sobre la pregunta, ¡esta es una expresión regular , NO un comentario!

Eric Hu
fuente
15
Si un /*...*/comentario "funciona", es porque el compilador CoffeeScript lo está interpretando como una expresión regular. Definitivamente no recomendado!
Trevor Burnham
1
¿Entonces supongo que NO HAY MANERA en CoffeeScript de tener un comentario dentro de la declaración (entre caracteres)?
Pete Alvin el

Respuestas:

267

Use un solo signo #

# like this

Un personaje parece bastante mínimo;)

También:

###
This block comment (useful for ©-Copyright info) also gets 
passed on to the browsers HTML /* like this! */
###
Michael Durrant
fuente
44
Por lo general, así es como querrás comentar; el hash triple se usa con mayor frecuencia cuando desea que el comentario caiga en javascript (mensajes de derechos de autor, por lo general).
Aaron Dufour
55
Ah suspiro . Los documentos oficiales usan el formulario único # en todos sus ejemplos, pero en realidad nunca lo mencionan en las explicaciones del texto, solo se refieren a los comentarios de bloque.
Gerry
1
Desafortunadamente, no hay forma de tener comentarios de bloque que no se muestran en la salida.
nilskp
24

La forma principal de comentar es sh / Perl / Ruby / ... #comentarios de estilo :

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

Utiliza los comentarios de estilo de bloque### cuando desea que aparezca un comentario en la versión de JavaScript:

A veces le gustaría pasar un comentario de bloque al JavaScript generado. Por ejemplo, cuando necesita incrustar un encabezado de licencia en la parte superior de un archivo. Los comentarios de bloque, que reflejan la sintaxis de los heredocs, se conservan en el código generado.

Entonces, si comienzas con

###
PancakeParser is Public Domain
###

entonces obtendría este comentario de JavaScript en el JavaScript generado:

/*
PancakeParser is Public Domain
*/
mu es demasiado corto
fuente
4

Cuidado con ###! Si usa ### para separar secciones de código (como lo hago yo), es terriblemente sorprendente cuando ese código deja de funcionar como resultado.

Mark Wilden
fuente
¿Sabes por qué? Tenemos el código trabajando localmente pero no en el servidor de compilación con ###.
Azat
Desafortunadamente, me di cuenta de esto hace meses, y no estoy "en ese espacio" en este momento para echarle un vistazo.
Mark Wilden el
10
¿Porque un par hace un comentario de bloque?
3
No sería tan sorprendente si usaras un editor de resaltado de sintaxis, con comentarios que aparecen en un color diferente
Nick Perkins
44
¿Por qué downvote? Es una advertencia válida. Realmente, dice que no use una línea sólida de # como separador de sección, o de vez en cuando puede obtener pares de comentarios de bloque desequilibrados.
Jim Mack