ЯВАСКРИПТ 2

Схема:

  1. Введение
  2. Объявление переменной в JavaScript

3. Различия между var, let и const

4. Резюме

Различия между const, let и var в JavaScript
В JavaScript переменные могут быть объявлены с использованием трех разных методов: var, let и const.

Объявление переменной в JavaScript

На заре JavaScript существовал только один способ объявления переменных — использование ключевого слова var. Однако были некоторые проблемы, связанные с переменными, объявленными с использованием ключевого слова var, поэтому необходимо было разработать новые способы объявления переменных. С появлением ES6 разработчики теперь могут определять переменные в соответствии со своими конкретными потребностями благодаря двум новым ключевым словам: let и const.
Все три из этих трех ключевых слов имеют сходство в синтаксисе объявления переменных. Однако они различаются по своему использованию и области действия, как подробно описано в следующем разделе.
Читайте: Общие причины ошибок JavaScript и как их избежать
Область применения: глобальная область действия или область действия функции. Областью действия ключевого слова var является глобальная или функциональная область. Это означает, что к переменным, определенным вне функции, можно получить глобальный доступ, а к переменным, определенным внутри конкретной функции, можно получить доступ внутри функции.

Пример 1: переменная "a" объявлена ​​глобально. Таким образом, область действия переменной ‘a является глобальной, и она может быть доступна везде в программе. Показанный вывод находится в консоли.

‹script›
var a = 10
function f(){
console.log(a)
}
f();
console.log (а);
‹/script›

10
10

Пример 2. Переменная «a» объявлена ​​внутри функции. Если пользователь попытается получить к нему доступ вне функции, он отобразит ошибку. Пользователи могут объявить две переменные с одинаковыми именами, используя ключевое слово var. Кроме того, пользователь может переназначить значение переменной var. Результат отображается в консоли.

Javascript

‹script›
function f() {
// К нему можно получить доступ из любого
//находящегося внутри этой функции
var a = 10;
console.log( a)
}
f();
// A не может быть доступен
// вне функции
csole.log(a);
‹/скрипт›

10
ReferenceError: a is not defined

Пример 3. Пользователь может повторно объявить переменную с помощью var и обновить переменную var. Результат отображается в консоли.

Javascript

‹script›
var a = 10
// Пользователь может повторно объявить
// переменную, используя var
var a = 8
// Пользователь может обновить переменную var
a = 7
‹/script›

7

Пример 4. Если пользователи используют переменную var перед объявлением, она инициализируется неопределенным

Результат отображается в консоли.

JavaScript

‹скрипт›
console.log(a);
var a = 10;
‹script›

вывод

undefined

Ключевое слово JavaScript let: ключевое слово let представляет собой улучшенную версию ключевого слова var.

Объем:

Область блока. Область действия переменной let ограничена только блоком. Он не может быть доступен за пределами определенного блока ({block}). Давайте посмотрим на приведенный ниже пример.
Пример 1: вывод отображается в консоли.

JavaScript

‹script›
let a = 10;
function f() {
le b = 9
console.log(b);
console.log(a) ;
}
f();
‹/script›

Пример 2: код возвращает ошибку, потому что мы обращаемся к переменной let вне функционального блока. Результат отображается в консоли.

JavaScript

‹script›
let a = 10;
function f() {
if (true) {
let b = 9
// Выводит 9
> console.log(b);
}
// Выдает ошибку, поскольку
// определено в блоке if
console.log(b);
}
f()
// печатает 10
console.log(a)
‹/script›

9
ReferenceError: b is not defined

Пример 3. Пользователи не могут повторно объявить переменную, определенную с помощью ключевого слова let, но могут обновить ее.

JavaScript

‹script›
let a = 10
// Нельзя
let a = 10
// Разрешено
a = 10
‹ /скрипт›

Выход:

Uncaught SyntaxError: Identifier 'a' has already been declared

Пример 4. Пользователи могут объявить переменную с одним и тем же именем в разных блоках с помощью ключевого слова let.

JavaScript

‹script›
let a = 10
if (true) {
let a=9
console.log(a) // Выводит 9
}
console.log(a) // Выводит 10
‹/script›

9 
10

Пример 5. Если пользователи используют переменную let перед объявлением, она не инициализируется значением undefined, как переменная var, и возвращает ошибку.

JavaScript

‹script›
console.log(a);
let a = 10;
‹/script›

Вывод:

Uncaught ReferenceError: Cannot access 'a' before initialization

ключевое слово const в JavaScript: ключевое слово const имеет все свойства, такие же, как ключевое слово let, за исключением того, что пользователь не может его обновить.
Область действия: блочная область действия: когда пользователи объявляют const, они должны ее инициализировать, иначе она вернет ошибку. Пользователь не может обновить константную переменную после ее объявления.
Пример 1: мы меняем значение константной переменной, чтобы она возвращала ошибку. Результат отображается в консоли.

Javascript

‹script›
const a = 10;
function f() {
a = 9
console.log(a)
}
f() ;
‹/скрипт›

Выход:

TypeError: Assignment to constant variable.

Пример 2: пользователи не могут изменять свойства константного объекта, но могут изменять значение свойств константного объекта.

Javascript

‹script›
const a = {
prop1: 10,
prop2: 9
}
// разрешено
a.prop1 = 3< br /> // Запрещено
a = {
b: 10,
prop2: 9
}
‹/script›

Вывод:

Uncaught SyntaxError: Unexpected identifier

Различия между var, let и const

var:
1. Область действия переменной var является функциональной.
2. Ее можно обновить и повторно объявить в области действия.< br /> 3. Его можно объявить без инициализации.
4. Доступ к нему можно получить без инициализации, так как его значение по умолчанию «undefined».
5. Выполнено поднятие с инициализацией как «по умолчанию». ценить

let
1. Область действия переменной let — это область действия блока.
2. Ее можно обновить, но нельзя повторно объявить в области действия.
3. Его можно объявить без инициализации.
4. К нему нельзя обращаться без инициализации, иначе он выдаст 'referenceError'.
5. Поднятие выполняется, но не инициализируется (это причина ошибки при доступе к переменной let до объявления/инициализации.

константа:
1. Константная переменная имеет область видимости блока.
2. Ее нельзя обновить или повторно объявить в области видимости.
3. Ее нельзя объявить без инициализации.
4. Ее нельзя доступ без инициализации, так как его нельзя объявить без инициализации.
5. Подъем выполняется, но не инициализируется (это причина ошибки при доступе к const перед объявлением/инициализацией.

Примечание. Иногда пользователи сталкиваются с проблемами при работе с переменной var, поскольку они изменяют ее значение в конкретном блоке. Таким образом, пользователи должны использовать ключевые слова let и const для объявления переменной в JavaScript.

Краткое содержание:

С момента появления const и let использование var значительно сократилось. Использование const и let снижает риск ошибки разработчика и делает код более подробным. Это может иметь много преимуществ, таких как упрощение для новичков понимания логики вашего приложения.

Вот и все! Краткий обзор const, let и var 👍.