>  기사  >  웹 프론트엔드  >  JavaScript에서 Null과 정의되지 않음의 차이점은 무엇입니까?

JavaScript에서 Null과 정의되지 않음의 차이점은 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2024-10-19 06:18:30949검색

JavaScript에서 null은 의도적으로 객체 값이 없음을 나타내는 기본 값입니다. 이는 JavaScript의 잘못된 값 중 하나입니다. 즉, 부울 컨텍스트에서 false로 평가됩니다. 그러나 선언은 되었지만 값이 할당되지 않은 변수를 나타내는 undefine과는 다릅니다.

  • null은 특별한 기본 값이지만 typeof를 사용하여 해당 유형을 확인하면 "object"를 반환합니다.

What is the difference between Null and undefined in JavaScript?
null은 변수가 객체를 보유할 것으로 예상되지만 현재 객체가 없는 경우에 사용됩니다. 의도적으로 값이 없음을 나타냅니다.

let person = null;  // The `person` variable explicitly has no value.

의도적으로 "값 없음" 또는 "비어 있음"을 의미하고 싶을 때 사용됩니다.


한정되지 않은

JavaScript에서 정의되지 않음은 선언되었지만 아직 값이 할당되지 않은 변수에 자동으로 할당되는 기본 값입니다.

  • 정의되지 않음은 JavaScript의 기본 유형입니다. 선언되었지만 초기화되지 않은 변수를 참조하며 해당 유형은 "정의되지 않음"을 올바르게 반영합니다.
let x;
console.log(typeof x);         // "undefined"

null과 정의되지 않음의 차이점

What is the difference between Null and undefined in JavaScript?
이 예에서 uninitializedVariable은 값이 할당되지 않았기 때문에 정의되지 않았습니다.
한편, objectWithNoValue는 명시적으로 null로 설정되어 객체를 보유해야 하지만 현재는 보유하지 않음을 나타냅니다.

비교

  • 느슨한 동등성(==) null 및 정의되지 않음은 둘 다 "빈" 값을 나타내기 때문에 느슨하게 동일합니다.
console.log(null == undefined);  // true
  • 엄격한 동등성(===) 서로 다른 유형이므로 엄격하게 동일하지 않습니다.
console.log(null == undefined);  // true

위 내용은 JavaScript에서 Null과 정의되지 않음의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.