1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/songjinyang-everyday

 / Детали:

Вопрос 38. Настоящие различия между let, var и const. В JavaScript ключевые слова let, var и const используются для...

Предстоит сделать
Владелец
Создано  
27.04.2025

объявления переменных, но они имеют несколько ключевых различий: 1. Область видимости: - var: Объявленные переменные имеют функциональную область видимости. Это означает, что переменная объявленная внутри функции будет доступна во всем теле функции, даже если она объявлена после её использования. - let и const: Объявленные переменные имеют блочную область видимости. Это означает, что переменная будет видна только внутри блока, в котором она объявлена. 2. Поднятие (Hoisting): - var: Переменные объявленные с помощью var поднимаются до начала функции, что делает их доступными в любом месте функции. - let и const: Переменные объявленные с помощью let и const не поднимаются до начала функции, они остаются недоступными до тех пор, пока не будут объявлены. 3. Переопределение: - var: Переменные объявленные с помощью var могут быть переопределены. - let: Переменные объявленные с помощью let также могут быть переопределены, но только внутри области видимости, в которой они были объявлены. - const: Переменные объявленные с помощью const не могут быть переопределены, но если они являются ссылками на объекты, то содержимое объекта может быть изменено.4. Инициализация: - var: Переменные, объявленные с помощью var, не требуют обязательной инициализации. - let и const: Переменные, объявленные с помощью let и const, требуют обязательной инициализации при объявлении. Эти различия делают ключевые слова let, var и const полезными в различных сценариях разработки.

        let a = 222
        function cc(){
            console.log(this.a) //undefined, и переменная поднятие тут не причём, this указывает на window, где нет свойства a
            console.log(a)  /// 222     это подтверждает, что это не связано
        }
        cc()
        // var dd = 111
        function oo(dd){
            console.log(this.dd)                // 1111 var объявленная глобальная переменная висит на window
            console.log(dd)                         // 2
            var dd=2222
            console.log(dd)                         // 2222
        }
        oo(2)

Комментарий (0)

GitLife Service Account Задача создана

Вход Перед тем как оставить комментарий

Статус
Ответственный
Контрольная точка
Pull Requests
Связанные запросы на слияние могут быть закрыты после их объединения
Ветки
Дата начала   -   Крайний срок
-
Закрепить/Открепить
Приоритет
Участники(1)
1
https://api.gitlife.ru/oschina-mirror/songjinyang-everyday.git
git@api.gitlife.ru:oschina-mirror/songjinyang-everyday.git
oschina-mirror
songjinyang-everyday
songjinyang-everyday