JavaScript - === vs == 运算符性能

22 浏览
0 Comments

JavaScript - === vs == 运算符性能

几周前,我阅读了这个帖子Is < faster than <=?,讨论了C中的比较运算符。据说在性能上,<<=没有区别,因为它们被解释为相同/相似的机器指令。

与此同时,在我们公司的“最佳实践”中,建议我们始终使用"==="来比较事物,而不是"=="。因此,我开始思考这是否总是合适,因为我习惯使用"=="和"typeof ... ==",不想改变我的写作方式 :-]

请注意,这是在JavaScript的上下文中。

因此,我做了一些小研究,在这里Which equals operator (== vs ===) should be used in JavaScript comparisons?中提到:

这是因为等号操作符==会进行类型转换...意味着解释器会隐式地尝试转换值,然后进行比较。

另一方面,全等操作符===不进行类型转换,因此在比较时不会转换值。

我开始思考这是否意味着当我使用"==="运算符时,性能会更好,因为不需要将资源用于转换操作数。而且当所有代码转换为机器指令后,这是否意味着在JavaScript和其他语言中,就像使用<<=没有区别一样?

0