Там же как работает, оно берёт данные которые есть в текущий момент, и через 30 секунд их покажет
с чего бы это? Он же из замыкания возьмет переменную. Просто, видимо переменную пытаются поменять где-то в другой области видимости, а здесь она все так же 0.