Методы JavaScript для проверки нулевых, неопределенных и пустых значений

В JavaScript существует несколько методов проверки нулевых, неопределенных и пустых значений. Вот некоторые распространенные подходы:

  1. Операторы строгого равенства (===) или строгого неравенства (!==):

    if (value === null) { ... }
    // Check for null
    if (value === undefined) { ... }
    // Check for undefined
    if (value === '') { ... }
    // Check for empty string
  2. Операторы слабого равенства (==) или слабого неравенства (!=):

    if (value == null) { ... }
    // Check for null or undefined
    if (value == '') { ... }
    // Check for empty string (including null and undefined)
  3. Оператор typeof:

    if (typeof value === 'undefined') { ... }
    // Check for undefined
  4. Проверка пустых объектов или массивов:

    • Для объектов:
      if (Object.keys(obj).length === 0 && obj.constructor === Object) { ... }
      // Check for empty object
    • Для массивов:
      if (Array.isArray(arr) && arr.length === 0) { ... }
      // Check for empty array
  5. Нулевой оператор объединения (??) – представлен в ECMAScript 2020:

    const result = value ?? defaultValue; // Assigns defaultValue if value is null or undefined
  6. Необязательный оператор цепочки (?.) – представлен в ECMAScript 2020:

    const result = object?.property; // Returns undefined if either object or property is null or undefined

Эти методы позволяют проверять наличие в JavaScript нулевых, неопределенных и пустых значений.