一位朋友说我应该使用! (obj == null),因为它比obj != null好,但他不记得为什么要这么做。
有什么理由使用! (obj == null)吗?
有什么不同吗?我的意思是,两者都应该返回true时,obj不是null,也不是undefined,对不对?(我有点困惑)
当答案都是相同的结果时,我想知道,这对所有的JavaScript版本都是正确的吗?(我的意思是,两者都能在所有浏览器上工作吗?)
发布于 2019-05-01 08:08:41
有什么理由使用!(obj == null)
有些人可能会发现阅读更容易(或更难)。
我的意思是,如果obj不是空的,也不是未定义的,两者都应该返回true,对吗?(我有点困惑)
不是的。他们的意思完全一样。
如果答案都是相同的结果,那么我想知道,这对所有java脚本版本都是正确的吗?(我的意思是,两者都能在所有浏览器上工作吗?)
是。
发布于 2019-05-01 08:30:43
! (obj == null)将必须执行比较操作和布尔操作。所以,它的速度有点慢。
另一方面,obj != null是一个单一的比较。
最快的是obj !== null,它不需要进行类型强制。
然而,上述三种情况在平均程序中的性能变化是微不足道的。
https://stackoverflow.com/questions/55933244
复制相似问题