gpt4 book ai didi

javascript - (!~index) 比 (index === -1) 快吗?

转载 作者:行者123 更新时间:2023-11-29 10:20:54 25 4
gpt4 key购买 nike

我经常遇到有人在函数返回 -1 的情况下使用 (!~val) 而不是 (val === -1) (例如 indexOf())。

对我来说,与 -1 比较相比,逻辑 NOT + 按位 NOT 语句似乎非常难读。是否有足够的速度差异来保证使用一个而不是另一个?或者,如果不是速度,还有其他一些原因导致我没有使用按位 NOT 而不是 === 吗?

(如果这是一个重复,请提前致歉。但我找不到这个确切问题的答案。搜索“!~”在 SO 或 Google 中不太有效)

最佳答案

不,它们绝对不一样。

按位转换将进行隐式类型强制转换。 === 运算符检查类型是否相等。

所以这两个可以给出完全不同的结果。

var val = "-1";

(!~val) // true
(val === -1) // false

在这种情况下,我认为比较的意图和正确性远远超过任何性能考虑。确定您要比较的确切内容,并针对工作使用正确的比较。

关于javascript - (!~index) 比 (index === -1) 快吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12266301/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com