总是有三等于的语言

从一开始就有意设计了哪些流行的编程语言同时具有===和==(并且要求程序员找出使用哪一种)。
Javascript,PHP,ruby(可能还有其他人)今天拥有一个三等号运算符。 但是,目前尚不清楚这是一个刻意的设计决定,还是只是偶然发生(也许是因为语言以双等号开头,但在某些时候发现双等于人们并不是在做人们想做的事情)。
特别是在javascript中,有人记得它第一次出现时是否有三等号?

由于我的记忆不是很可靠,我不能说我记得或者,但是因为ECMA已经保留了ECMA-262规范的所有修订版,所以当“严格等于运算符”时,可以推迟阅读它们。被引入语言。

我无法在ECMA-262第1版和ECMA-262第2版中找到任何提及,但在ECMA-262第3版中,我们在第11.9.4章(第56页)中找到了它。 因此得出的自然结论是:不,当它第一次出现时,JavaScript没有===

由于您提到的其他语言(据我所知)在任何标准化机构中都没有批准,我认为如果有任何语言规范的话,就很难找到该语言规范的旧版本。

然而,值得注意的是,Ruby中===的含义可能与JavaScript或PHP(它非常相似)中的含义大不相同。 在Ruby中,它通常用于“包含”,即检查某些东西是否存在于其他内容中(例如,一个集合),而在另外两个语言中,它用于严格的相等性检查,这意味着不执行类型转换。在应用之前,操作员的任何一方。