我不是指臭名昭着的HTML元素<blink>,而是JavaScript函数String.prototype.blink。 我的链接中的MDN页面 - 以及Google发现的其他一些来源 - 表明这是一个弃用的功能(W3Schools更进一步,并将其列为非标准,错误地注意到任何当前浏览器都不支持它,但无论如何......)
alert("Hello World!".blink());
在查看ES6规范(当前RC是34)之后,我找不到任何有关这些声明的证据:显然,规范中没有任何内容表明blink方法已被弃用,过时或非标准。
其他字符串方法big
,bold
,fixed
,fontcolor
,fontsize
,italics
,{{1} },strike
,sub
:虽然不推荐使用各种HTML元素,但JavaScript方法看起来并不像。
当然,我的来源可能不准确,但MDN参考通常非常可靠,所以我怀疑我在这里忽略了什么。
其他人可以确认或揭穿眨眼方法已被弃用的事实吗?消息人士表示赞赏。
答案 0 :(得分:3)
由于ES5和ES6规范都没有使用&#34这个词,因此不推荐使用#34;在任何地方,这让我相信没有任何方法 被弃用。他们应该是否完全不同......
他们可能会生成由负责HTML或DOM API的工作组弃用的标签,但ECMAScript规范似乎并不认可(或至少使用)不推荐使用的方法或类的概念。
正如所讨论的in this question,即使在语言中,Javascript也没有弃用概念。一些语言特征在很大程度上被认为是含糊不清或不良的习惯,例如the with statement,未标记为&#34;已弃用&#34;在我能找到的任何官方参考资料中。像unescape
这样的方法在their MDN docs中被标记为已弃用,但未在规范中标记为
答案 1 :(得分:2)
JavaScript和HTML(至少在客户端)链接在一起。 blink
方法执行以下操作(根据MDN):
blink()方法创建一个HTML元素,使字符串闪烁。
由于<blink>
标记已弃用,或至少被归类为不合规功能...
元素是非标准元素。 HTML5将其归类为不符合要求的功能。
来源:http://www.w3.org/wiki/HTML/Elements/blink
...并且blink
方法会生成这样一个已弃用的标记,我认为它也推断出JavaScript方法也已弃用。
但是,我找不到任何官方消息来源,所以我理解这不是一个完美的答案。
<强> - 编辑 - 强>
正如@ssube在评论中所说:A)ES6标准尚未最终确定,B)它的草稿(可在此处找到:http://wiki.ecmascript.org/doku.php?id=harmony:specification_drafts)甚至不均匀有“#34;弃用&#34;在他们中。所以在某种意义上似乎不推荐使用blink
方法,因为不推荐使用 nothing 。
然而,似乎任何负责任的文档站点(例如MDN)都会将其列为已弃用,因为它会生成一个已弃用的标记,并且它的真正来源是“弃用的”#34;状态。
答案 2 :(得分:2)
是强>
我认为Annex B顶部的描述(定义了所有这些方法)非常清楚(强调我的):
当ECMAScript主机是Web浏览器时,需要本附件中定义的ECMAScript语言语法和语义。本附件的内容是规范性的,但如果ECMAScript主机不是Web浏览器,则是可选的。
注意:本附件描述了基于Web浏览器的ECMAScript实现的各种遗留功能和其他特性。 本附件中指定的所有语言功能和行为都有一个或多个不良特征,如果没有遗留用途,将从此规范中删除。但是,大量现有功能使用这些功能网页意味着Web浏览器必须继续支持它们。本附件中的规范定义了这些遗留功能的可互操作实现的要求。
这些功能不被视为核心ECMAScript语言的一部分。编写新的ECMAScript代码时,程序员不应使用或假设存在这些特性和行为。不鼓励ECMAScript实现实现这些功能,除非实现是Web浏览器的一部分或者需要运行相同的旧ECMAScript代码网络浏览器遇到的。
请注意,ES5中未提及大多数字符串方法。就像网络一样,浏览器供应商也做了自己的事情并添加了自定义扩展。在这种情况下,它达到了TC39委员会决定至少在规范中提及它们的重要性。
答案 3 :(得分:-1)
我找到了什么:
<强>已过时强>
此功能已从Web标准中删除。虽然有些浏览器可能仍然支持它,但它正在被删除。不要在旧项目或新项目中使用它。使用它的页面或Web应用程序可能随时中断。
来源:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/blink
我希望这可以帮到你。