<MyRusakov.ru />

Программирование на C++ с Нуля до Гуру

Программирование на C++ с Нуля до Гуру

Данный курс научит Вас программировать на языке C++, который, несмотря на свой почтенный возраст, необычайно сильно востребован. Курс состоит из 6 разделов, посмотрев которые и выполнив все упражнения, Вы с нуля освоите этот язык и сможете создавать самые разные проекты любой сложности на C++.

Для закрепления материала из уроков к ним идёт множество упражнений.

Дополнительно к курсу идёт вспомогательная система, которая не даст Вам забросить начатое на полпути.

Также вместе с курсов Вы получаете Бонус "Программирование на C++ в Unreal Engine", в котором Вы научитесь создавать игры на C++ с использованием этого движка.

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Зачем Вы изучаете программирование/создание сайтов?

Что такое каррирование в JavaScript

Что такое каррирование в JavaScript

В данной небольшой статье, я расскажу и покажу что такое каррирование в JavaScript.

Итак, каррирование - это преобразование функции из вида func(a,b,c) в func(a)(b)(c). Т.е. мы берем функцию, которая принимает несколько аргументов сразу, и превращаем ее в функцию, которая принимает несколько аргументов по отдельности. Где это может быть полезно? Например, нам необходимо настроить функцию, т.е. передать ей один или несколько начальных аргументов, которые всегда будут одинаковы, оставив возможность вызывать функцию с разными окончательными значениями. Пример далее:

function setUpColors(color1, color2, color3)
{
    console.log(color1 + color2 + color3);
}

setUpColors('Синий', 'Красный', 'Белый')
setUpColors('Синий', 'Желтный', 'Прозрачный')
setUpColors('Синий', 'Белый',   'Оранжевый')

Как видно из примера выше - это обычная функция, три вызова которой содержат одинаковый начальный аргумент - Синий. Как упростить и улучшить данный код? Как раз с помощью каррирования в JavaScript. Для этого надо переписать код, как в примере ниже:

// каррированная функция
function setUpColors(color1)
{
    // возвращаем функцию
    return function(color2)
    {
        // возвращаем функцию
        return function(color3) 
        {
            // выводим значения
            console.log(`${color1} ${color2} ${color3}`);
        }
    }
}


let blue = setUpColors('Синий'); // настроили базовую функцию

blue('Красный')('Белый')
blue('Желтый')('Прозрачный')
blue('Белый')('Оранжевый')

Как видно из примера выше, базовая функция создается один раз, а уже производным функциям передаются нужные аргументы.

Таким образом, с помощью каррирования в JavaScript, можно инициализировать переменные функции, словно свойства объекта, что часто бывает очень удобно.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (0):

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.