Назад к вопросам
Junior — Middle
66
Можешь объяснить основные отличия области действия (scope) в функциях?
Компании, где спрашивали
Dogma
Ответ от нейросети
sobes.tech AI
Область действия (scope) в функциях определяет, где переменные и функции доступны для использования. Основные виды области действия:
- Локальная область: переменные, объявленные внутри функции, доступны только внутри этой функции.
- Глобальная область: переменные, объявленные вне функций, доступны везде в программе.
- Блочная область (в языках, поддерживающих, например, JavaScript с let/const): переменные доступны только внутри блока кода (например, внутри if, for).
Пример на Kotlin (Android):
fun example() {
val localVar = 10 // локальная переменная
if (localVar > 5) {
val blockVar = 20 // блочная область
println(blockVar) // доступна здесь
}
// println(blockVar) // ошибка: blockVar не видна здесь
}
val globalVar = 100 // глобальная переменная
fun another() {
println(globalVar) // доступна здесь
}
Понимание области действия важно для управления видимостью и временем жизни переменных, предотвращения конфликтов имен и утечек памяти.