首页 > 解决方案 > 在 JavaScript 中的方法中添加额外的括号?

问题描述

每当我浏览 JavaScript 代码时,我都会看到一个带有一对额外括号的方法。

例如:

if( (typeOf VariableName) === "function" ) 

或者

alert(("Hello World"))

这些有什么作用,为什么需要它们?

标签: javascriptparentheses

解决方案


在 JS 中,括号用于多种用途。

  • 分组运算符(如在数学表达式中)
  • 函数调用(如果放置在标识符之后)
  • 有几个语句需要它们

您提供的示例属于它们充当分组运算符的类型。

在您的场景中,不需要它们,两个示例在没有它们的情况下也可以工作。

但是,在某些情况下,您必须使用额外的括号,例如:

  • 强制语句进入表达式上下文:

    function(){}() //This is evaluated like a function declaration, SyntaxError
    
    (function(){})() //Works
    
    x => {'x': x} //Returns undefined
    
    x => ({'x': x}) //Returns the object
    
  • 更改评估顺序:

    1+2*3 //7
    
    (1+2)*3 //9
    

推荐阅读