Область действия переменных — это одна из важнейших вещей, которые вам нужно понимать в JavaScript. Зная эту концепцию, вы уменьшите количество ошибок и напишете более качественный код, и, к счастью, вам несложно ее понять.

В JavaScript есть два типа областей действия: глобальная и локальная область действия. Давайте посмотрим на каждый из них!

Но прежде чем мы это сделаем, прежде чем мы начнем обсуждать разницу, я просто хочу упомянуть, что существует разница между let & const и var в определении области видимости переменных. Сейчас я сосредоточусь на var, а о let и const поговорим позже.

Глобальный охват

Переменные, объявленные вне функций, называются глобальными, и их можно использовать в любом месте документа JavaScript, даже внутри функций. Вот пример:

// text is a global variable 
var text = “TEXT”;function myFunction() {
 console.log(“Text inside of a function: “ + text)
}myFunction()
// Output: “Text inside of a function: TEXT”console.log(“Text Outside of a function: “ + text)
// Output: “Text Outside of a function: TEXT”

В этом примере мы создали переменную в глобальной области видимости с именем text. Затем мы попытались зарегистрировать переменную в консоли внутри функции и снаружи, и это сработало просто отлично. Это означает, что мы можем использовать глобальные переменные в любом месте нашего документа.

Локальная область

Переменные, объявленные внутри функции, называются локальными, и их нельзя использовать вне своей функции. Давайте пример!

function myFunction() {
 // text is a local variable
 var text = “TEXT”;
 
 console.log(“Text inside of a function: “ + text)
}myFunction()
// Output: “Text inside of a function: TEXT”console.log(“Text Outside of a function: “ + text)
// Output: Uncaught ReferenceError: text is not defined

Вы можете видеть, что в этом примере мы не смогли получить доступ к переменной, которую мы объявили внутри myFunction, потому что текст в этом случае является локальным для myFunction. Если мы создадим другую переменную вне myFunction с тем же именем, они будут иметь разные значения. Давайте посмотрим на этот пример:

// text is a global variable
var text = “TEXT_OUTSIDE”function myFunction() {
 // text is a local variable
 var text = “TEXT”;
 
 console.log(“Text inside of a function: “ + text)
}myFunction()
// Output: “Text inside of a function: TEXT”console.log(“Text Outside of a function: “ + text)
// Output: “Text Outside of a function: TEXT_OUTSIDE”

Пусть и Конст

Давайте теперь поговорим о разнице между let & const и var в определении области видимости переменных. Как мы уже говорили ранее, область видимости в var локальна только внутри функций. Однако с помощью let и const область действия является локальной для любого блока кода. Блок кода — это все, что находится внутри фигурных скобок, например цикл for или цикл while.

Заворачивать

Область действия в JavaScript необходимо знать, потому что это поможет вам писать лучший код. Я надеюсь, что вы понимаете, как работает Scope, и если у вас есть какие-либо вопросы или дополнения, пожалуйста, дайте мне знать. Вы можете связаться со мной с моего сайта: My-Website

Спасибо за чтение :)