Форум программистов, компьютерный форум, киберфорум
JavaScript для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
1 / 1 / 0
Регистрация: 29.01.2013
Сообщений: 90

Вложение.Замыкание

12.05.2019, 10:52. Показов 1448. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
JavaScript
1
2
3
4
5
6
7
8
var summ = 0;
  function sumFun(arg) {
   summ += arg;
   console.log(summ);
  }
  sumFun(8);
  sumFun(10);
  sumFun(15);
Нужно вместо глобального объекта (window...var summ) использовать еще одну функцию. Как это сделать ? можно с объяснением,пожалуйста.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
12.05.2019, 10:52
Ответы с готовыми решениями:

Замыкание
var a = 1; function b() { a = 10; return; function a() {} } b(); alert(a); Вот недавно читал статью про...

Замыкание
есть такой пример замыкания: function makeCounter() { var currentCount = 1; return function() { // (**) return...

Замыкание
Есть вопрос по коду function makeArmy() { var shooters = ; for (var i = 0; i < 10;i++) { var shooter = function me() { ...

8
 Аватар для Пифагор
2172 / 1655 / 840
Регистрация: 10.01.2015
Сообщений: 5,207
12.05.2019, 11:15
Tarick, так что-ли?
JavaScript
1
2
3
4
5
6
7
8
9
10
11
var summ1 = function(data){
    return data;
};
function sumFun(arg) {
  var summ = null;
  summ += arg;
  console.log(summ1(summ));
}
sumFun(summ1(8));
sumFun(summ1(10));
sumFun(summ1(15));
А зачем???

Добавлено через 46 секунд
А объяснение простое: в рамках документа функции видны отовсюду.

Добавлено через 31 секунду
https://jsfiddle.net/vfsk0gc4/1/
1
1 / 1 / 0
Регистрация: 29.01.2013
Сообщений: 90
12.05.2019, 11:26  [ТС]
Пифагор, нужна встроенная(вложенная) функция , то есть функция в функции
0
 Аватар для Пифагор
2172 / 1655 / 840
Регистрация: 10.01.2015
Сообщений: 5,207
12.05.2019, 11:32
Tarick, не понял. Встроенная функция с каким функционалом? И еще раз: а зачем???
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
12.05.2019, 11:34
Лучший ответ Сообщение было отмечено Tarick как решение

Решение

JavaScript
1
2
3
4
5
6
7
8
9
10
function sumFun() {
    let sum = 0;
    return function (data) {
        return sum += data;
    };
}
let sum = sumFun();
 
console.log(sum(8));
console.log(sun(10));
1
1 / 1 / 0
Регистрация: 29.01.2013
Сообщений: 90
12.05.2019, 19:34  [ТС]
Jewbacabra, А как сделать так, чтобы не нужно было писать console.log , а просто достаточно sum(8);?
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
12.05.2019, 19:43
Цитата Сообщение от Tarick Посмотреть сообщение
А как сделать так, чтобы не нужно было писать console.log
Использовать console.log внутри функции
0
1 / 1 / 0
Регистрация: 29.01.2013
Сообщений: 90
12.05.2019, 19:48  [ТС]
Jewbacabra, ну внутри функции родителя , тоесть sumFun ...console.log(sum); ,так?
0
Эксперт JS
6497 / 3908 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
12.05.2019, 20:06
Tarick, если сильно захотелось поизвращаться без особой цели, то идеально так:
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<!doctype html>
<html>
<head>
    <meta charset="utf-8" />
</head>
<body>
    <script>
        function sumFun(arg) {
            var sum = arg + 10;
            function inner(innerArg) {
                var innerSum = innerArg * 2 + sum;
                console.log(innerSum);
            }
            return inner;
        }
 
        sumFun(2)(8);
        sumFun(3)(10);
        sumFun(4)(15);
    </script>
</body>
</html>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
12.05.2019, 20:06
Помогаю со студенческими работами здесь

Замыкание
Дорбый, Например у нас есть обычный счетчик функция var c1; var c2; var c3; function c() {

Не работает замыкание
Я новичок в JS , может чего не понял , но у меня не хочет работать замыкание: function testMegaFunc() { var topVar =...

Замыкание на addEvent
Здравствуйте, подскажите пожалуйста, как правильно выполнить замыкания для передачи конретного инстанса в метод? Есть подобный код: ...

Как работает замыкание
Когда использую 1 вариант цикла, то создается дополнительный индекс. Во 2 варианте все хорошо. Я не пойму момент с анонимной функцией,...

Что такое замыкание?)
Ребят всем привет)Обьясните пожалучйста простым нормальным языком что такое замыкание и для чего они нужны?!Заранее спасибо


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru