Javascript.RU

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

Вызов функции в функции
Есть код
function buf()
        {
            var value = "";
            
             function b()
            {
                if(arguments.length >=1)
                    {
                        value += arguments[0];
                        return;
                    } else {
              return value; 
                }
            }
            
            b.clear = function()
            {
                value = "";
            }
            
            return b;      
        }


Вызов типа
example("one ");
или
example();
работает только если в конце функции buf стоит
return b;
. А если поставить со скобками
return b();
, то ничего не работает
Почему со скобками не работает?
Ответить с цитированием
  #2 (permalink)  
Старый 24.01.2016, 22:47
Профессор
Отправить личное сообщение для Mess4me Посмотреть профиль Найти все сообщения от Mess4me
 
Регистрация: 03.11.2014
Сообщений: 263

Orange_Dream,
Сообщение от Orange_Dream
return b;
возвращает саму функцию , но не вызывает её.
Сообщение от Orange_Dream
return b();
Здесь же вы сразу вызываете функцию - она выполняется .
Можно почитать тут
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вызов функции внутри другой функции. Win32Sector Events/DOM/Window 1 12.12.2015 20:28
Вызов функции страницы из расширения chrome nontxt Events/DOM/Window 0 09.02.2015 10:42
Вызов функции из функции с параметрами cript Events/DOM/Window 13 18.01.2015 14:57
Вызов функции из скрытого iframe Beer75 Общие вопросы Javascript 2 05.06.2013 21:36
Двойной вызов функции Tmin10 jQuery 8 08.12.2011 15:19