rawlen (v)
!subtitle:说明
获取 v 的长度,不会触发元表的 __len 字段。
!subtitle:参数
v - 要获取长度的对象
!subtitle:返回值
v 的长度
local v = {1, 2, 3, 4, 5}
-- 定义元表,包含 __len 元方法
local metatable = {
__len = function(v) return 233 end
}
-- 设置元表
setmetatable(v, metatable)
-- 读取字段
print("#v ", #v)
print("rawlen(v) is", rawlen(v))
rawlen - Lua 5.4 Reference Manual