为什么/*@不是JavaScript中的注释?

Lar*_*bar 15 javascript comments

这个脚本http://html5shiv.googlecode.com/svn/trunk/html5.js看起来像一个很大的评论,但它的工作原理.为什么/*@的行为不像评论?

Que*_*tin 22

这使用称为条件编译的专有Microsoft功能.就非Microsoft浏览器而言,它是一个注释(但它们不需要shiv).

  • 我只能猜测作者的动机,但有条件的评论会阻止其他浏览器尝试下载它,而条件编译会阻止它被执行,如果你把它推到标准的单一缩小JS包中. (4认同)

Bak*_*dan 5

这里有一些更多的信息来源.

这是一条评论 - 多行评论.所有浏览器都在JavaScript中支持注释(//或/*...*/).但只有IE检查注释中的@并识别条件编译的脚本部分.这是为了使用非标准Microsoft功能.

HTML中还有条件注释MSDN,将在IE10中删除.