← Все вопросы
Зачем писать local перед переменной в Lua? Без него же тоже работает
5
Делаю скрипт в Roblox, пишу:
score = 10
print(score)
Всё работает. А в уроках всё время пишут local score = 10. Зачем это local, если и так норм?
1 ответ
9
✓ Принятый ответ — помог автору
Работает-то работает, но local — это про область видимости переменной, и без него ты делаешь переменную глобальной, что обычно плохо.
local score = 10 -- видна только тут (в этом блоке/функции/скрипте)
score2 = 10 -- глобальная: висит "везде"
Почему local лучше почти всегда:
- Быстрее: Lua работает с локальными переменными ощутимо шустрее.
- Безопаснее: глобальные легко случайно перезаписать из другого места, и потом ловишь баг, где число вдруг стало не тем.
- Понятнее: видно, где переменная "живёт".
Правило простое: пиши local всегда, пока не появилась причина не писать. У новичков такой причины обычно и не появляется.
Ваш ответ
Войдите, чтобы ответить на вопрос.