Защита от ошибок (утренний непрогруз таблиц Квика)

Подробнее
5 года 3 мес. назад - 5 года 3 мес. назад #2071 от Alpinist573
периодически Квик сбоит и обращение к его графикам возвращает nil

однако проверка в стиле:

bar = {5,6}

if bar[0].close~= nil then
bbb = bar[0].close
else
bbb = "false"
end

не вернет "false", а даст ошибку, что мы пытаемся индексировать невесть что.

Как корректно проверить, что нам таблица квика не вернула nil ?
Последнее редактирование: 5 года 3 мес. назад пользователем Alpinist573.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Подробнее
5 года 3 мес. назад - 5 года 3 мес. назад #2072 от admin
У вас будет ошибка типа "пытаетесь индексировать nil"

bar[ 0 ] равен nil в вашем примере, а вы хотите получить его поле close, что невозможно.

Проверить наверное можно, проверив bar[ 0 ] на равенство nil
Последнее редактирование: 5 года 3 мес. назад пользователем admin.
Спасибо сказали: Alpinist573

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Подробнее
5 года 3 мес. назад #2073 от Alpinist573
Тильтанул на ночь глядя ))

просто пошире надо проверять на nil

bar = {5,6}

if bar ~= nil and bar[0] ~= nil and bar[0].close ~= nil then
bbb = true
else
bbb = false
end

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Подробнее
5 года 3 мес. назад #2074 от admin
bbb = bar and bar[ 0 ] and bar[ 0 ].close

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Модераторы: admin