在大型 lua 表中使用冒号与点进行函数声明的性能影响

Performance impact of using Colon vs Dot for function declarations in large lua tables

我养成了用冒号而不是点来声明几乎所有模块函数的习惯,但我不怎么使用 OOP,而且几乎从不使用“self”。 每次我调用函数时将 self 作为参数传递似乎是多余的,尤其是在表非常大的情况下。

这对性能有影响吗?是否值得更改我所有的函数声明以使用点?

向函数传递一个额外的 table 引用不会对性能产生太大影响。这与 table 大小无关,因为 table 不会被复制。

这似乎是编程风格的问题,而不是性能问题。对模块函数使用冒号语法是非常不常见的,因为这个习惯用法显然是用于实际的方法调用。因此,一个在不必要的地方使用它的库会让任何其他 Lua 程序员感到非常困惑。