5.1节最后lua递归实现unpack()有点小bug 原代码: function unpack(t, i) i = i or 1 if t[i] then return t[i], unpack(t, i + 1) end end 函数体中的判断语句有bug,应该改成if t[i] ~= nil 否则调用打印函数print(unpack{2, 3, false, 4})将会打印2 3将false后的截断
function unpack(t, i) i = i or 1 if i <= #t then return t[i], unpack(t, i + 1) end end print(unpack({2, nil, 3, false, nil, nil})) ----------- 这样?@雨雾梦佳人