Чем отличаются undefined и null в JavaScript и где они применяются
JavaScript

Чем отличаются undefined и null в JavaScript и где они применяются

Razilator

В JavaScript undefined и null - это два разных значения, которые используются для обозначения отсутствия значения. Однако, у них есть различия.

Что означает undefined в JavaScript?

undefined означает, что переменная была объявлена, но ей не было присвоено значение, или что свойство объекта не существует.

index.js
let a;
console.log(a); // undefined

let obj = { prop: 123 };
console.log(obj.nonExistentProp); // undefined

Что означает null в JavaScript?

null, с другой стороны, означает, что переменная была объявлена и ей было присвоено значение null, что является явным указанием на отсутствие значения.

index.js
let a = null;
console.log(a); // null

В большинстве случаев undefined и null могут быть использованы взаимозаменяемо, но есть исключения. Например, когда мы пытаемся получить значение свойства объекта, которое не существует, возвращается значение undefined, а не null. Также стоит учитывать, что undefined является значением по умолчанию для аргументов функций, которые не были переданы.

index.js
function foo(a, b) {
  console.log(a, b);
}

foo(1); // 1 undefined

В целом, undefined и null - это специальные значения, которые помогают разработчикам работать с отсутствием значений в JavaScript, и понимание их различий поможет избежать ошибок в вашем коде.

;