Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

Документы

Медиа

Назад
Вопрос про JavaScript: typeof, function, check

Как проверить, что переданный аргумент является функцией?

Вопрос проверяет базовое понимание типов данных и способов защиты от некорректных аргументов.

Короткий ответ

Самый надёжный способ — использовать typeof. Для функций он возвращает строку 'function'. Это стандартное поведение языка. Проверка проста и быстра. Её достаточно в большинстве случаев.

Длинный ответ

Проверка аргументов — важная часть защитного программирования, особенно в утилитарных функциях.

Базовый способ проверки

if (typeof callback !== 'function') {
  throw new TypeError('Argument must be a function')
}

Почему именно typeof

  1. Стандартное поведение
    typeof корректно определяет функции.

  2. Простота и читаемость
    Проверка легко понимается при чтении кода.

  3. Предсказуемость
    Работает одинаково во всех средах.

Альтернативы и ограничения

  • instanceof Function зависит от контекста выполнения

  • проверка через Object.prototype.toString избыточна

Вывод

Для проверки, что аргумент является функцией, достаточно использовать typeof. Это самый простой и надёжный способ.

Уровень

  • Рейтинг:

    3

  • Сложность:

    5

Навыки

  • JavaScript

    JavaScript

Ключевые слова

#typeof

#function

#check

Подпишись на React Developer в телеграм