Получи случайную криптовалюту за регистрацию!

Почему JavaScript функции являются объектами первого класса (F | Frontend Interview - собеседования по Javascript / Html / Css

Почему JavaScript функции являются объектами первого класса (First-class Objects)?

Объект первого класса (first class object или first class citizen) это объект, который может быть передан как аргумент функции, возвращён из функции или присвоен переменной. Функции в JavaScript полностью соответствуют этому определению.

Функцию можно присвоить переменной:
const multipleTwo = (n) => n * 2;

Функция может быть передаваемым аргументом другой функции:
async function loadData(func) {
loading = true;
// другой код относящийся к инициализации статусов загрузки

await func();

loading = false;
// другой код относящийся к обработке статуса загрузки
}

function getData() {
// код получения данных с сервера
}

loadData(getData);

Функции могут быть возвращаемым значением другой функции:
function makeAdder(x) {
return function(y) {
return x + y;
};
};

@frontendInterview