Closed. This question needs to be more focused。它当前不接受答案。
                        
                    
                
            
        
            
        
                
                    
                
            
                
                    想改善这个问题吗?更新问题,使其仅通过editing this post专注于一个问题。
                
                    5年前关闭。
            
        

    

我试图比较两个字符串,并根据结果执行一些表达式。

下面是我为比较两个不匹配的字符串而编写的两个示例表达式。


String1 !== String2
!(String1 === String2)


在性能方面,建议从上述两个中选出哪一个?

最佳答案

这是“微优化”的典型情况。简而言之:不用担心。选择可读性更高的版本(个人而言,我倾向于1.胜过2.)。

(只有一点点)更长的答案是:您不知道哪个更快-这取决于解释器的实现。*此外,您最好的机会是每条这样的语句赢得一条指令。不是很多。任何使用内存,从Web服务器加载文件或数据或与DOM交互的代码都比这慢得多。如果您的应用程序感觉太慢,那就需要从那里开始优化。

*)基本上,!==被设计为一个操作,而!(a === b)本质上是两个操作:比较后加一个负号。但是,取决于解释器(甚至编译器),可能会优化这样的表达式。

关于javascript - 逻辑上! (NOT)运算符在JavaScript中的差异,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25133159/

10-12 16:26