>웹 프론트엔드 >JS 튜토리얼 >JavaScript의 Null은 객체인가요 아니면 프리미티브인가요? 이것이 Null 검사에 어떤 영향을 미치나요?

JavaScript의 Null은 객체인가요 아니면 프리미티브인가요? 이것이 Null 검사에 어떤 영향을 미치나요?

Patricia Arquette
Patricia Arquette원래의
2024-12-05 00:16:12731검색

Is Null in JavaScript an Object or a Primitive, and How Does This Affect Null Checks?

Null: 객체인가 아닌가?

JavaScript에서 null 값은 특별한 값입니다. 이는 무(無)의 명시적인 할당을 나타냅니다. Null은 기본 값이지만 객체로 간주되기도 합니다. 이러한 고유한 구별은 그 특성에 대한 의문을 제기합니다.

Null 확인: == vs !

첫 번째 질문은 == null을 사용하여 null을 확인하는 것이 다음과 같은지 여부입니다. !물체. 대답은 '예'입니다. 이중 등호(==)는 유형 강제를 수행합니다. 즉, 비교하기 전에 두 피연산자를 동일한 유형으로 변환하려고 시도합니다. 이 경우 null과 undefine이 둘 다 부울 false로 변환되어 검사가 동일해집니다.

Null vs Undefine: The Difference

또 다른 일반적인 질문은 차이점입니다. null과 정의되지 않음 사이입니다. 둘 다 무를 나타내지만 서로 다른 의미를 갖습니다.

  • 정의되지 않음: 변수가 초기화되거나 선언되지 않았음을 나타냅니다. 선언된 모든 변수의 초기 상태입니다.
  • Null: 의도적으로 아무 것도 할당하지 않음을 나타냅니다. 값을 명시적으로 없음으로 설정하여 알 수 없거나 적용할 수 없음을 나타내는 데 사용됩니다.

예:

다음 코드를 고려하세요.

let name;  // undefined

if (name === undefined) {
  console.log("Name is undefined");
}

name = null;  // null

if (name === null) {
  console.log("Name is null");
}

이 예에서는 이름이 처음에 정의되지 않았습니다. if (name === undefine)로 확인하면 변수에 값이 할당되지 않았기 때문에 조건이 true입니다. name에 null을 할당하면 null은 무(無)를 의미하므로 if(name === null) 조건도 true가 됩니다.

위 내용은 JavaScript의 Null은 객체인가요 아니면 프리미티브인가요? 이것이 Null 검사에 어떤 영향을 미치나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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