JavaScript

Как удалить переменную в javascript ?

пишу:

"use strict"
let budgetMonth = 20000;
delete budgetMonth;

и получаю ошибку
Uncaught SyntaxError: Delete of an unqualified identifier in strict mode.

как удалить эту переменную?
Артём Гусак
Артём Гусак
2 010
В JavaScript оператор `deletedelete используется для удаления свойств из объекта. Однако он не может быть использован для удаления переменных.

Чтобы отменить настройку переменной, вы можете установить для нее значениеundefined:

Копировать код
let budgetMonth = 20000;
budgetMonth = undefined;
или

Копировать код
let budgetMonth = 20000;
let budgetMonth = null;
В качестве альтернативы, если вы используете современный javascript иlet или constдля объявления переменной, вы можете использовать constключевое слово для переназначения переменной.

Копировать код
let budgetMonth = 20000;
budgetMonth = null;
Это приведет к переназначению значения переменной наnull, фактически "удаляя" ее.
Однако он все равно будет существовать в памяти, и к нему можно будет снова получить доступ, если вы присвоите ему значение.

Чтобы полностью удалить переменную из памяти, вам нужно будет использовать letключевое слово и переназначить переменную на `null или `undefined.

Копировать код
let budgetMonth = 20000;
budgetMonth = undefined;
Это полностью удалит переменную из памяти, и вы не сможете получить к ней доступ снова
Дамир Жумутов
Дамир Жумутов
5 021
Лучший ответ
let - уже достаточно. Переменная задана локально, а не глобально
Никак. Только переписать значение. И в будущем по ходу скрипта помнить, что повторно объявить такую переменную нельзя.
МN
Марат Nurulllin
84 322
Нет необходимости её удалять.
Если тебе надо присвоить ей новое значение, то присвой ей новое значение.
Если переменная больше не нужна, то просто оставить её покое.
Её в определенный момент соберёт сборщик мусора и освободит память.
Вадим Николаев
Вадим Николаев
23 960