select(index, ...)

如果index是正数,那么返回从左边第index个到最右边的参数;
如果index是负数,那么返回从右边第index个到最左边的参数;
如果index是字符串"#", 那么返回可变参数...的参数个数
例如:

function test(...)
    print(select("#", ...))
    -- 输出为:
    -- 4

    for i=1, select("#", ...) do
        print(select(i, ...))
    end
    -- 输出为:
    -- 1    2    3    4
    -- 2    3    4
    -- 3    4
    -- 4

    for i=1, select("#", ...) do
        print(select(-i, ...))
    end
    -- 输出为:
    -- 4
    -- 3    4
    -- 2    3    4
    -- 1    2    3    4
end

test(1, 2, 3, 4)

标签: lua