我更喜欢标准的coffeescript语法,因此在可能的地方不要使用方括号。
所以,我有一些对象。例如,
let obj = {
с = 0;
a(x) {
this.c+=x;
return this;
},
b() {
this.c++;
return this;
}
}
好吧,这里一切都清楚了。但是,如果我叫
a
怎么办?obj
.a 5
.a 15
# etc
这也很清楚。
但是,如果我不想使用方括号
b
,那么在调用a
之后如何调用()
?obj
.a 5
.a 15
.do b
-编译为
obj.a(5).a(15).do(b);
但是我希望
obj.a(5).a(15).b();
因此,如何在调用
b
方法后不传递任何参数的情况下调用a
,不使用方括号
()
? 最佳答案
这是不可能的。不用括号将其视为属性或变量。阅读this article为何没有它们就无法编写。一种不带括号的书写方式是为它提供一个参数,例如null,但这比编写()更为麻烦。
关于javascript - 是否可以通过`do`关键字调用对象的方法?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56579967/