javascript - 在对象方法调用上使用两组括号的原因是什么

标签 javascript css html

我目前正在学习和自学 javascript,我刚刚找到了一个使用这个 '()();' 的简单代码这叫什么,没有找到太多关于它的信息,它是什么以及它是如何使用的,这里是我找到的代码:

  'use strict';
    let obj, method;
    
    obj = {
      go: function() { alert(this); }
    };
    
    obj.go();              
    
    (obj.go)();            
    
    (method = obj.go)();  
    
    (obj.go || obj.stop)();

对不起,如果有什么错误,英语不是我的母语。

最佳答案

单独使用时,括号是分组运算符。它们对表达式进行分组以控制计算的顺序或优先级。你可以read MDN here关于它。

// example                 // is the same as            

(obj.go)();                 obj.go();

(method = obj.go)();        method = obj.go; method();

(obj.go || obj.stop)();     // calling go or stop after assinging to a temp variable

关于javascript - 在对象方法调用上使用两组括号的原因是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54404797/

相关文章:

javascript - 关于javascript中对象字面量的解释

javascript - 在 IE 和 FF 中使用 js 禁用输入提交按钮不起作用

html - Chrome 中的可滚动 div 问题

javascript AngularJS 在包装标签时自动更改字体大小

javascript - 是否可以优化 Javascript 客户端搜索?

html - 你将如何实现这个 HTML/CSS 布局?

css - IE7/IE8 兼容模式 DIV 溢出问题

css - 如何修复没有彼此相邻的div

html - Firefox <audio>不断下载数据

javascript - 页面加载后启动动画 react