哪个JavaScript相等运算符(==或===)更快

Which JavaScript equality operator (== or ===) is faster?

本文关键字:更快 运算符 JavaScript 哪个      更新时间:2023-09-26

可能重复:
JavaScript===vs===:哪个“平等";我用的话务员?

我一直认为=====算子快。但经过一番阅读,我感到困惑。如果我使用===而不是==运算符,在性能级别上有什么好处吗?

===运算符将比==运算符更快。这是因为===不需要检查多个比较,而==需要(即==执行转换)。

return "true" == true; //true

上面将首先测试"true" === true是否为false,然后检查"true" === "true"(即,它将bool转换为字符串,然后再次检查)。

阅读下面的评论。您也可以将这两个基准作为指南:

  • http://jsperf.com/2-vs-3-eq
  • http://jsperf.com/2-vs-3-eq-2

不过,为了将来参考,它们确实不是一回事,你不应该互换使用它们。事实上,您真正想使用==而不是===情况并不多。它通常会导致意外或看似随机的结果,而编程的主要目的是创建一个用户可以使用的界面。由于条件并不总是与最初的测试结果一致,程序可能会出现错误、混乱或不可靠。

虽然===运算符可能比==执行得更快,但在大多数情况下很难区分速度差异,因此您可以自由使用这两个选项中的任何一个,使代码更清晰。

您可以尝试使用===运算符更快的