<!-- 在Javascript中做啥?
Posted
技术标签:
【中文标题】<!-- 在Javascript中做啥?【英文标题】:what does <!-- in Javascript do?<!-- 在Javascript中做什么? 【发布时间】:2011-08-21 09:56:31 【问题描述】:在谷歌中搜索符号太难了,所以我在这里问。
<!--
对我来说看起来像是一条评论,但它不像 html 那样工作。还是像//
这样的单行注释?
使用它的目的和好处是什么?谢谢
示例代码:
<script type="text/javascript">
<!--
alert("example");
//-->
</script>
【问题讨论】:
你有在哪里看到的例子吗? 【参考方案1】:这是一种从浏览器中隐藏 JavaScript 的旧方法,它将 script
元素的文本节点视为普通文本(并显示您的代码)。
Douglas Crockford recommends你不用了。
不要在脚本中使用
<!-- //-->
hack。它旨在防止脚本在第一代浏览器 Netscape 1 和 Mosaic 上显示为文本。多年来一直没有必要。<!-- //-->
应该表示 HTML 注释。注释应该被忽略,而不是编译和执行。此外,HTML cmets 不包含--
,因此递减的脚本会出现 HTML 错误。
【讨论】:
现在这一切都说得通了。它是一个现有的代码,它无处不在。所以就把它们留在那里。【参考方案2】:它是 HTML——它是一个 HTML 注释。常用于 CDATA 的 JavaScript 块中:http://en.wikipedia.org/wiki/CDATA
【讨论】:
【参考方案3】:JavaScript 将<!--
视为单行注释,与//
相同。这样您就可以包装您的 JS 代码,使其看起来像是对不理解 JS 的浏览器的 HTML 注释:
<script>
<!--
alert('test');
// -->
</script>
【讨论】:
不,它没有。事实上,你的回答没有意义。 Javascript 执行里面的代码。 HTML 将其视为注释。 @EJP:如果您的浏览器根本不理解 Javascript 或<script>
标签,HTML 只会将其视为注释。十多年来,在任何半流行的浏览器中都没有出现这种情况。这意味着答案中的陈述是正确的,尽管我不确定它是否被视为单行注释。我相信如果该符号位于 <script>
块的开头,则大多数 Javascript 引擎都会忽略该符号。
@Matthew 它在 chrome 中被视为单行注释。我在jsfiddle尝试过
@Matthew Scharley:这并没有改变 Javascript 根本不将其视为评论的事实。否则整个构造将毫无意义。
@EJP,它被视为单行评论。【参考方案4】:
html 中的注释
<!-- ... -->
javascript 中的注释类似于 c:
一行注释=// ...
多行注释 = /* ... */
【讨论】:
以上是关于<!-- 在Javascript中做啥?的主要内容,如果未能解决你的问题,请参考以下文章
如果你要求一个整数并且用户输入“b”,你会在 C++ 中做啥?