You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Lua中获取table内元素的索引?

Lua中获取数组元素索引的方法

Lua本身没有内置的indexOf函数来直接获取数组元素的索引,你可以自己实现一个简单易用的版本:

local function indexOf(tbl, value)
    -- 用ipairs遍历连续整数索引的数组
    for i, v in ipairs(tbl) do
        if v == value then
            return i -- 找到匹配元素,返回其索引
        end
    end
    return nil -- 未找到匹配元素时返回nil
end

-- 测试示例
local testtbl = {"foo", "bar", "baz"}
print(indexOf(testtbl, "bar")) -- 输出: 2
print(indexOf(testtbl, "qux")) -- 输出: nil

额外说明

  • 上述函数依赖ipairs,仅适用于从1开始、无空洞的连续整数索引数组;如果你的表包含非整数键或索引不连续,需要改用pairs遍历,但此时返回的键可能不是有序数字。
  • 若数组内存在多个相同元素,该函数会返回第一个匹配元素的索引。

内容的提问来源于stack exchange,提问作者berriz44

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 16:32:32