用于数字起始名称的Lua函数语法糖

Yad*_*ood 1 syntax lua

Lua 5.1.4

例如:

bar = {}
bar.name = 'test'
bar['123.com'] = function(self) print(self.name) end
Run Code Online (Sandbox Code Playgroud)

我无法调用如下方法:

bar:['123.com']()
stdin:1: '<name>' expected near '['
Run Code Online (Sandbox Code Playgroud)

以下作品:

bar['123.com'](bar)
Run Code Online (Sandbox Code Playgroud)

但我这有点难看.这种情况有没有语法糖?

或者,如果它真的无法做到,Lua团队将来会添加这种语法吗?

或者他们是故意这样做的?

Sha*_*que 7

不,我们不能像你想要的那样调用这个方法.您假设仅按以下语法调用该方法.

bar['123.com'](bar)
Run Code Online (Sandbox Code Playgroud)