三个等号符号在JavaScript中是在哪一年引入的?

6
在哪一年引入了JavaScript中的三个等号符号?

加分项:

==

===

Object.is

以及其他你可能遗漏的相等检查。

4
这就是文档和规范的用处。 参见https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Comparison_Operators#Specifications ,===是在ECMAScript第3版(ECMA-262),即1999年12月添加的。 - Phil
5
这并不是“过于宽泛”,只是这个问题并不是非常有用,而且你本可以自己去做研究。 - deceze
@deceze 我在Stack Overflow(和其他地方)找到它有些困难。是的,可能有点仓促,但过去有类似的问题得到了好评和差评。在SO上发布问题并不意味着我不愿意在正确的方向上稍微努力一下就能回答自己的问题,而且我认为如果这仍然是该网站上没有重复的相关问题,那么downvotes不应该用于“缺乏研究努力”的情况。真正的问题在于它是否相关 - Ryan Leach
2
确切地说,a) 这似乎对任何工作中的 JavaScript 程序员都不太相关(你甚至无法获得不支持 === 的 JavaScript 版本),b) Stack Overflow 不一定需要成为现有文档的副本。 - deceze
2
个人而言,我最初寻找它的原因是为了找到一个不需要搜索多个标准和潜在的预标准的摘要。我觉得这是一个很好的单一数据点,可以向其他人展示语言的演变。 - Ryan Leach
2
点赞!好问题。=== 运算符被纳入规范的起始日期是一个相关的好奇心。 - Lonnie Best
1个回答

13
根据ECMA标准,可在以下网址找到:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Comparison_Operators#Specifications

Object.is - 2015年6月

标准ECMA-262第6版 / 2015年6月引入了Object.is


=== - 1999年12月

===是ECMAScript第3版(即JavaScript 1.3)中引入的。

ECMAScript第3版(ECMA-262)标准

增加了===和!==运算符。

JavaScript 1.3中实现,日期为1999年12月,详见标准ECMA-262第3版


== - 1997年6月

我猜测==早于ECMAScript标准,但最接近的标准是

标准ECMA-262 1997年6月版,又称JavaScript 1.0

然而,这只是它们被规范化的日期,如果它们在标准化之前就存在了,日期可能是不正确的。


1
我在这里找到了一些1996年的标准(http://www.ecma-international.org/archive/ecmascript/1996/index.html),早于ES1,其中已经包括了`==`。 - Bergi

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接