util.table.len
Shared
Retrieves the length of a table
Syntax
local length = util.table.len(
input
)Parameters
| Type | Name | Description |
|---|---|---|
table | input | Table to measure |
Returns
| Type | Name | Description |
|---|---|---|
int | length | Length of the table |
Examples
local t = {1, 2, 3, 4, 5}
local len = util.table.len(t)
core.engine.print("info", len) -- 5local packed = util.table.pack(1, nil, 3, nil, 5)
local len = util.table.len(packed)
core.engine.print("info", len) -- 5local t = {1, 2, nil, 4}
local len = util.table.len(t)
core.engine.print("info", len) -- 4 (may vary, depends on #)local t = {}
local len = util.table.len(t)
core.engine.print("info", len) -- 0local t = {1, 2, 3}
core.engine.print("info", util.table.len(t)) -- 3
core.engine.print("info", #t) -- 3local args = util.table.pack("a", nil, "b", nil, "c")
core.engine.print("info", #args) -- May be incorrect with nil holes
core.engine.print("info", util.table.len(args)) -- 5 (always correct)local t = util.table.pack(1, nil, 2, nil, 3)
for i = 1, util.table.len(t) do
core.engine.print("info", i, t[i])
endlocal t = {}
if util.table.len(t) == 0 then
core.engine.print("info", "Table is empty")
endlocal t = {10, 20, 30, key = "value"}
local len = util.table.len(t)
core.engine.print("info", len) -- 3 (only counts array part)