Что такое falsy значения в JavaScript?

«Что такое falsy значения в JavaScript?» — вопрос из категории JavaScript, который задают на 26% собеседований Node.js Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Falsy значения в JavaScript — это значения, которые при приведении к логическому типу становятся false. В Node.js окружении это особенно важно при валидации входных данных, обработке условий и работе с логикой приложений.

Всего 6 falsy значений:

  1. false
  2. 0 (ноль)
  3. "" (пустая строка)
  4. null
  5. undefined
  6. NaN

Пример проверки:

// Валидация входных параметров в Express middleware
function validateInput(input) {
  if (!input) { // Сработает для всех falsy значений
    throw new Error('Input is required');
  }
  // Дальнейшая обработка
}

// Явная проверка на конкретные falsy случаи
function processUserData(user) {
  if (user.age === undefined || user.age === null) {
    return 'Age not provided';
  }
  if (isNaN(user.age)) {
    return 'Invalid age format';
  }
  return `Age: ${user.age}`;
}

Важные нюансы:

  • [], {}, "0", "false" — являются truthy значениями.
  • В Node.js при работе с файловой системой или базами данных часто проверяю if (!buffer.length) или if (!resultSet) для falsy-проверок.
  • Для строгой проверки использую === вместо == чтобы избежать неявного приведения типов.