javascript - 如果括号仅包含属性访问器,是否会忽略括号?
问题描述
鉴于以下代码,为什么不(obj.foo)()
接收window
as this
?在我看来,括号被忽略了,而不是被视为计算结果为foo
?
window.bar = 'window';
const obj = { bar: 'obj' };
obj.foo = function() {
console.log(`Called through ${this.bar}`);
}
obj.foo(); // Called through obj
(obj.foo)(); // Called through obj - Why?
(0, obj.foo)(); // Called through window
(true && obj.foo)(); // Called through window
解决方案
推荐阅读
- sql - 将两列数据与第二列的第一个字符组合成一列,留下空值
- reactjs - React - 如何从子功能组件执行功能
- python - 从其他 Python 文件调用函数时的问题
- three.js - glTF 2.0 视频纹理支持
- actions-on-google - 如何获得 Google 的“书面许可”以使用 Google Assistant SDK 将我的项目商业化?
- amadeus - 如何通过 Amadeus Hotel 服务连接客房
- google-bigquery - 使用命令将数据库(具有嵌套文档)从 Cloud Firestore 导出到 Bigquery
- wordpress - 推荐在销售仪表板上需要 Wordpress 插件
- ios - Tableview Cells问题内的UIVisualEffectView
- sql - 更改 SQL Server 名称导致客户端 PC 无法连接到服务器