Javascript에서 Null을 확인하는 방법

때때로 당신은 아무것도 실제로...아무것도 아니라는 것을 확인하기 위해 확인해야 합니다. 😲

JavaScript에서 null은 의도적으로 null 값을 포함하는 기본 유형입니다. 정의되지 않음은 기본 유형이며 값을 시작하지 않고 선언하는 변수를 나타냅니다.

따라서 null은 아무것도 아니며 undefined는 단지 무언가가 누락된 것입니다. 🤣



그다지 도움이 되지 않습니다. 알아요. 더 깊이 잠수합시다.

Null 및 정의되지 않은 값을 정의하는 방법



예가 도움이 될 것입니다. 아래에서 두 개의 변수를 선언합니다. 간단하게 유지하고 null 및 undefined를 사용하여 유사성 때문에 때때로 혼동되기 때문에 결과를 비교합니다.

//declaring two variables: one null and one undefined.

let leviticus = null;
// leviticus is null

let dune;
// dune is undefined


leviticus는 의도적으로 개체 값(null)이 없습니다. dune가 선언되었지만 의도치 않게 값이 누락되었습니다(정의되지 않음).

typeof()로 Null을 확인하는 방법



JavaScript에서 typeof() 연산자를 사용하여 null을 확인할 수 있습니다.

// typeof() will return 'object' when called on a null variable

console.log(typeof(leviticus))
// object

console.log(typeof(dune))
// undefined



흥미롭게도 typeof() 로 확인하면 null 변수가 객체를 반환합니다. 이는 JavaScript의 historic bug 때문입니다.

같음 연산자로 Null을 확인하는 방법



또 다른 호기심은 double equals == , nullundefined 를 사용하여 동등성을 느슨하게 검사할 때 true 를 반환한다는 것입니다.

console.log(leviticus == dune)
// true

console.log(leviticus === dune)
// false

console.log(leviticus == null)
// true (but not as good a habit to use as strict equality shown in next example)



그러나 삼중 등호===를 사용하여 동등성을 엄격하게 검사하면 null 및 undefined가 false를 반환합니다.

이는 JavaScript에서 null과 undefined가 둘 다falsy이기 때문입니다. Falsy는 부울(false 또는 true ) 컨텍스트에서 발생하는 값이 고려false됨을 의미합니다.

JavaScript는 부울 컨텍스트에서 값을 사용할 수 있도록 값을 한 유형에서 다른 유형으로 강제하는 강제 변환을 사용합니다.

그러나 동등성을 엄격하게 확인하면 실제로는 동등하지 않음을 알 수 있습니다.

Strict Equality로 Null을 확인하는 방법



null을 확인하는 가장 좋은 방법은 엄격하고 명시적인 동등성을 사용하는 것입니다.

console.log(leviticus === null)
// true

console.log(dune === null)
// false



Object.is() 메서드로 Null을 확인하는 방법



null을 확인하는 똑같이 확실한 방법은 기본 제공Object.is() 메서드를 사용하는 것입니다.

console.log(Object.is(leviticus, null)
// true

console.log(Object.is(dune, null)
// false



요약


  • null는 거짓을 평가하는 변수의 기본 유형이며, 객체의 typeof()를 가지며 일반적으로 의도적으로 null로 선언됩니다.
  • undefined는 falsy를 평가하고 정의되지 않은 typeof()를 가지며 선언되었지만 초기 값이 누락된 변수를 나타내는 변수의 기본 유형입니다.
  • null == undefined는 느슨하게 동일하기 때문에 true로 평가됩니다.
  • null === undefined는 실제로 동일하지 않기 때문에 거짓으로 평가됩니다.
  • <null_variable> === null는 null을 엄격하게 검사하는 가장 좋은 방법입니다.
  • Object.is(<null_variable>,null)는 null을 확인하는 똑같이 신뢰할 수 있는 방법입니다.

  • 힘내! 이미 수집한 것처럼 JavaScript 생태계에는 이와 같은 수많은 수수께끼가 있습니다. 그러나 분해하면 자신있게 이해할 수 있습니다.



    읽어 주셔서 감사합니다!



    도움이 되는 분석이 되었기를 바랍니다. 코딩을 계속하고 앞으로 몸을 기울입니다!

    Twitter에서 나에게 안녕이라고 말하십시오.

    좋은 시간 되세요 👋.

    좋은 웹페이지 즐겨찾기