}
for i, v in ipairs(t) do
if v == nil then
print("nil value at index " .. i)
else
print(v)
end
end
t = { 1, nil, 3, nil, 5 }
for i = 1, #t do
if t[i] == nil then
print("nil value at index", i)
else
print(t[i])
end
end
В обоих случаях только "1" печатается.
Тестил в куче онлайн-песочниц, минимальная версия lua, которую нашел 5.3.2.
Там с обычным for вывод 1
nil value at index 2
3
nil value at index 4
5
, а c ipairs такой же как в тарантуле. Pairs использовать нельзя тк нужно гарантировать порядок
не пользоваться ipairs
ну так i = 1, #t do в тарантуле работает так же, как и ipairs)
Нужен гарантированный порядок
Обсуждают сегодня