12 подписчиков
Привет! Сегодня твоя задача - ответить на вопросы:
1. Что такое каррирование (currying)?
2. Что такое чистая функция?
3. В чем разница между let и var?
Ответы на вопросы:
1. Каррирование — это процесс преобразования функции с несколькими параметрами в несколько функций с одним параметром. Данный процесс назван в четь математика Хаскелла Карри. Каррирование превращает одну n-арную функцию в несколько унарных функций (уменьшает арность функции)
2. Чистая функция — это функция, возвращаемое значение которой зависит только от передаваемых аргументов, без побочных эффектов. Проще говоря, если вы вызывается функцию n раз с n аргументами, и функция всегда возвращает одно и тоже значение, значит, она является чистой
3. Основные отличия состоят в следующем:
var:
- Доступно с момента появления JavaScript
- Имеет глобальную или функциональную область видимости
- Переменные поднимаются в начало области видимости
let:
- Представлено в ES6
- Имеет блочную область видимости
- Переменные также поднимаются, но не инициализируются (поднимается только объявление, но не присвоение значения)
Около минуты
9 июля 2024