tags:

views:

121

answers:

3

My editor (geany) changes the comment colour when the comments starts with /*! Whats the difference between /* ... */ and /*! ... */

+2  A: 

In Javascript, there is none, they're both just inline comments. Presumably geany is doing special coloring for some documentation tool or similar (edit: apparently it's YUI Compressor, see x1a4's answer) that treats /*! comments specially (similar to the way JSDoc treats /** comments specially).

T.J. Crowder
+11  A: 

The ! prevents YUI compressor from removing the comment when it compresses. (It just removes 1 ! instead. Multiple !'s mean you can compress multiple times without loss of the comment.) It's just an extension, but not part of javascript itself.

Documentation is here. Search for 'C-style comments'.

also, I'm not aware of any other compressors that respect the !. Packer, closure compiler, shrinksafe, and jsmin do not respect it at least.

x1a4
Reference: http://www.julienlecomte.net/yuicompressor/README @Phonethics: This would be handy for copyright statements and such you want left in the code.
T.J. Crowder
A: 

They are both treated as comments in JavaScript. For the second one, since the exclamation is inside, JavaScript doesn't care what's inside the comment anyway.

Tools that minimizes or compresses JavaScript files would get rid of anything inside /* ... */, but would leave the second style of comment intact. The reason is so that there's a way to keep the copyright information in the minified or compressed version of JavaScript files.

Khnle