HTML注释<!-是否在JavaScript中充当单行注释,为什么?

亚历山大·盖布赫

JavaScript具体如何理解结构<!--从JavaScript的角度来看,除了//之外还有其他评论/* */吗?

从测试看来,JavaSript看起来<!--//单线

<script> <!-- alert('hi') //--> </script>

什么也没做

<script> <!-- 
alert('hi') //--> </script>

可以正常工作。

该行为记录在哪里?

这不是其他问题的重复:我不问为什么,是否或者应该使用它。我想问一下它在JavaScript中的正式语法和语义。这个问题很重要,在其他问题中没有得到回答:例如,无法从其他问题及其答案中猜出上述行为(实际上,这是我的动机:我的带有单线的程序没有工作,而这些问题和答案无助于理解原因)。

费利克斯·克林

从测试看来JavaSript对待<!--//一个班轮

是的,按照ES6规范附录B的规定

B.1.3类似HTML的注释

Comment ::
    MultiLineComment
    SingleLineComment
    SingleLineHTMLOpenComment
    SingleLineHTMLCloseComment
    SingleLineDelimitedComment

SingleLineHTMLOpenComment ::
    <!-- SingleLineCommentCharsopt

但是,请注意附件B的描述:

本附件描述了基于Web浏览器的ECMAScript实现的各种传统功能和其他特征。本附件中指定的所有语言功能和行为均具有一个或多个不良特征,在没有遗留用法的情况下,将从本规范中删除。但是,大量现有网页对这些功能的使用意味着网络浏览器必须继续支持它们。本附件中的规范定义了这些旧功能的互操作实现的要求。

这些功能不被视为核心ECMAScript语言的一部分。编写新的ECMAScript代码时,程序员不应使用或假定这些功能和行为的存在。不鼓励ECMAScript实现实现这些功能,除非该实现是Web浏览器的一部分或需要运行Web浏览器遇到的相同旧ECMAScript代码。

因此,该部分仅用于描述现有的“非官方”行为,并且一旦浏览器停止实现此行为,就会从规范中删除。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么Javascript会忽略单行HTML注释?

来自分类Dev

HTML中的条件注释

来自分类Dev

为什么双连字符在HTML注释中无效?

来自分类Dev

从html删除角度注释

来自分类Dev

HTML注释行为

来自分类Dev

如何隐藏HTML注释

来自分类Dev

JavaScript RegExp替换HTML注释

来自分类Dev

如何注释掉包含注释的HTML块

来自分类Dev

如何注释掉包含注释的HTML块

来自分类Dev

访问 HTML 注释中的标签

来自分类Dev

在Web浏览器中,“->”在JavaScript中是否是有效的单行注释定界符?

来自分类Dev

为什么在用“注释选择”注释多行选择时,Visual Studio为什么求助于单行注释?

来自分类Dev

为什么HTML的注释代码无法转换白玉转换

来自分类Dev

为什么某些PHP代码呈现为HTML注释

来自分类Dev

继续-不呈现HTML注释

来自分类Dev

PHP在HTML中被注释掉

来自分类Dev

使用Jsoup从html提取注释

来自分类Dev

从innerHTML过滤HTML注释节点

来自分类Dev

HTML-注释后的行

来自分类Dev

删除文件中的单行注释

来自分类Dev

单行注释会阻止函数运行,多行注释不会引起问题,为什么?

来自分类Dev

为什么Opera从stackoverflow注释中执行javascript?

来自分类Dev

使用JavaScript取消注释html代码

来自分类Dev

带有注释JavaScript代码的HTML

来自分类Dev

带有注释JavaScript代码的HTML

来自分类Dev

如何在Firebug中显示HTML注释?

来自分类Dev

Python美丽汤在html中插入注释

来自分类Dev

删除Angular JS中的辅助HTML注释?

来自分类Dev

PHP中的HTML注释标签输入验证