Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 27.03.2011, 15:41
Профессор
Отправить личное сообщение для demoniqus Посмотреть профиль Найти все сообщения от demoniqus
 
Регистрация: 28.05.2008
Сообщений: 182

Почему так происходит.
Писал скрипт и столкнулся с такой бадягой: имею в функции (F2) переменную result, которая создается именно внутри функции и которой внутри этой функции присваивается некоторое значение. Потом я внутри текущей функции (F2) вызываю другую функцию (F1), внутри которой создается своя переменная result, которой присваивается некоторое значение, и которая возвращается посредством return - полученное значение присваивается внутри F2 в переменную result1. После этого значение переменной result внутри функции F2 оказывается переписанным... ПОЧЕМУ??? И есть ли подобные бадяги в JS, о которых следует знать заранее?
function F1() {
result = 'Ничего';
return result;
}

function F2 {
result = 'Что-то';
alert (result);// выведет 'Что-то'
result1 = F1();
alert (result);// выведет 'Ничего'
}
Ответить с цитированием
  #2 (permalink)  
Старый 27.03.2011, 16:28
Аватар для float
Профессор
Отправить личное сообщение для float Посмотреть профиль Найти все сообщения от float
 
Регистрация: 01.07.2010
Сообщений: 387

читаем про var
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Профайлинг. jquery.clean() и jquery.after() - почему так долго? bmziskin jQuery 4 23.11.2010 15:18
Почему скрипт срабатывает только после обновления страницы? Randomizer jQuery 2 01.09.2010 19:01
Почему так получается? lukingnu jQuery 0 31.07.2010 15:50
Спойлер зависает после первого же закрытия. Почему так происходит? niXmale82 Элементы интерфейса 0 21.05.2010 18:38
Как происходит утечка памяти в даном случае? Yazla Общие вопросы Javascript 2 09.11.2009 13:02