Задать вопрос
@bighoc
php/javascript developer

Нужно ли использовать var при обьявлении переменной если я не собираюсь использовать её вне текущей зоны видимости?

Например
function(object){
var keys = Object.keys(object)
var result = keys.map(.....);

return result;
}


Имеет ли смысле здесь использовать var ? Если вне текущей функции я не собираюсь использовать эти переменные ?

Прав ли я что кроме доступа глобально var ничего не делает ?
  • Вопрос задан
  • 262 просмотра
Подписаться 1 Оценить Комментировать
Решения вопроса 1
Petroveg
@Petroveg
Миром правят маленькие с#@&ки
  1. Переменную невозможно объявить без var.
  2. При выполнении операции присвоения без указания var производится поиск переменной с таким именем по цепочке контекстов и, при отрицательном результате, создаётся свойство глобального объекта. При использовании use strict в последнем случае будет выброшено исключение.
  3. Свойство удалить можно, переменную нельзя.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
Lynn
@Lynn
nginx, js, css
Нужно. Иначе граблей не избежать.

Например, найдите разницу:

function x() {
  var location = 'Москва';
}
x();

и
function x() {
  location = 'Москва';
}
x();
Ответ написан
Комментировать
madmages
@madmages
Человек прямоходящий
объявляй в том скопе где используешь.
Железное правило.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы