AirWair
@AirWair

Объясните пожалуйста как выводится результат?

Добрый вечер. Есть небольшое упражнение:
function doIt(param) {
   param=2;
}
var test=1;
doIt(test);
console.log(test);

Вопрос, какой результат выведет эта программа?
В браузере - 1, я думаю 2. Расскажите, кому не трудно, почему 1, а не 2?
  • Вопрос задан
  • 291 просмотр
Решения вопроса 1
delphinpro
@delphinpro Куратор тега JavaScript
frontend developer
В функцию вы передаете не переменную, а ее значение.
И внутри функции вы изменяете локальную переменную. Значение переменой test остается неизменным.
У вас пробелы в знаниях об областях видимости переменных. Нужно покурить теорию :)
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
swipeshot
@swipeshot
Учусь на ошибках.
А с чего вы взяли, что 2?
Ответ написан
@President42
Функция не меняет значения глобальной переменной
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы