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

Объясните решение Создайте функцию add(n)/Add(n), которая возвращает функцию, которая всегда добавляет n к любому числу

18.10.2021, 23:29. Показов 2225. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Создайте функцию
JavaScript
1
add(n)/Add(n)
, которая возвращает функцию, которая всегда добавляет n к любому числу

JavaScript
1
2
var addOne = add(1);
addOne(3); // 4
JavaScript
1
2
var addThree  = add(3);
addThree(3); // 6
Решение

JavaScript
1
2
3
4
5
function add(n) {
  return function (m) {
    return n+m;
  }
}
Не понимаю, почему если, например, в первом примере взять
JavaScript
1
n == 1
, у нас вернется функция m
JavaScript
1
{ 1 + m}
, и затем мы вызываем addOne c n == 3, то почему у нас 1 из предыдущей функции становится m? И складывается с n == 3 ?
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.10.2021, 23:29
Ответы с готовыми решениями:

Создайте функцию, которая получает пароль в параметре и возвращает функцию которая сравнивает строку с паролем.
Создайте замыкание: function makePassword(password) { return function nickname(passwordGuess) { return...

Создайте функцию, которая принимает число от 1 до 7 и возвращает название дня недели. Решение через if else.
Здравствуйте. Есть задача: Сделайте функцию, которая принимает параметром число от 1 до 7, а возвращает день недели на русском языке. ...

функцию add которая принимала только числа в виде аргументов
Добрый вечер всем. Нужна помощь. Есть задание: Доработайте функцию add таким образом чтобы она принимала только числа в виде аргументов....

3
Эксперт JS
2463 / 1769 / 625
Регистрация: 11.07.2016
Сообщений: 4,067
18.10.2021, 23:43
Лучший ответ Сообщение было отмечено sozdatel как решение

Решение

Цитата Сообщение от sozdatel Посмотреть сообщение
затем мы вызываем addOne c n = 3
Вот здесь ошибка. На второй строке мы вызываем уже вложенную функцию, которую вернула первая функция. То есть по сути передаём аргумент m, а не n.
JavaScript
1
2
3
4
5
6
7
function add(n) {
  return function (m) {
    return n+m;
  }
}
 
var addOne = add(1);
Что будет в переменной addOne? А там будет функция, которую вернёт функция add(). Другими словами получится следующее:
JavaScript
1
2
3
var addOne = function(m) {
  return 1 + m;
}
Теперь при вызове функции addOne() мы получаем следующее:
JavaScript
1
2
3
addOne(3);
// =>
return 1 + 3; // 4
Добавлено через 3 минуты
Ещё вдогонку. Если обойтись без промежуточных переменных, то:
JavaScript
1
2
3
4
5
6
7
function add(n) {
  return function (m) {
    return n+m;
  }
}
 
add(1)(3); // 4
1
10 / 10 / 1
Регистрация: 20.08.2016
Сообщений: 245
19.10.2021, 00:03  [ТС]
Balanaar, спасибо, вроде стало понятнее. Что почитать снова, чтобы лучше разобраться и запомнить этот приём? Вложенные функции?
0
 Аватар для klyapa
3503 / 1267 / 429
Регистрация: 24.07.2016
Сообщений: 1,890
19.10.2021, 00:31
Цитата Сообщение от sozdatel Посмотреть сообщение
Что почитать снова, чтобы лучше разобраться и запомнить этот приём?
Замыкания

Добавлено через 15 минут
Здесь ещё можно почитать
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.10.2021, 00:31
Помогаю со студенческими работами здесь

Описать функцию, которая добавляет к целому числу K справа цифру d
Описать функцию add_right_digit(d, k), которая добавляет к целому числу K справа цифру d(который лежит в диапазоне 1-9, k - целое число).С...

Создайте функцию, которая возвращает длину отрезка АВ.
Выполнить следующие задачи. Использовать функции для решения обязательно. Результат выводить через document.write ...

Создайте функцию которая возвращает последовательность чисел
Создайте функцию byThrees(), которая возвращает последовательность чисел, каждое из которых на 3 больше предыдущего. Начните...

Напишите функцию которая по данному натуральному числу n возвращает число
Напишите функцию которая по данному натуральному числу n возвращает число которая по данному натуральному числу n возвращает число,...

Создайте функцию, которая принимает на вход путь и возвращает информацию о файлах и директориях.
Задача звучит так- реализуйте и экспортируйте по умолчанию функцию, которая принимает на вход путь (абсолютный или относительный) и...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача №1: при указании работ (справочник РаботыПоРемонтуСпецтехники),. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru