>  기사  >  웹 프론트엔드  >  JavaScript에서 Null 또는 정의되지 않은 변수를 확실하게 확인할 수 있는 방법은 무엇입니까?

JavaScript에서 Null 또는 정의되지 않은 변수를 확실하게 확인할 수 있는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-10-31 17:08:02853검색

How Can I Reliably Check for Null or Undefined Variables in JavaScript?

JavaScript에서 안정적인 Null 및 정의되지 않은 변수 감지 탐색

JavaScript에서는 변수가 정의되었는지 또는 값이 있는지 확인하는 작업이 반복될 수 있습니다. 일. 많은 개발자는 다음 패턴을 사용합니다.

<code class="javascript">if (typeof(some_variable) != 'undefined' && some_variable != null) {
    // Do something with some_variable
}</code>

이 방법은 안정적이지만 장황할 수 있습니다. 일부 소스에서는 변수가 존재하는지 확인하는 것만으로도 동일한 효과가 있다고 제안합니다.

<code class="javascript">if (some_variable) {
    // Do something with some_variable
}</code>

그러나 Firebug와 같은 특정 개발 환경에서는 두 번째 접근 방식에서 some_variable이 정의되지 않은 경우 오류를 보고합니다.

null 또는 정의되지 않은 변수를 확인하는 더 효율적인 방법은 다음 구문을 활용하는 것입니다.

<code class="javascript">if (some_variable == null) {
    // some_variable is either null or undefined
}</code>

이 대안은 자세한 버전이며 Firebug와 같은 개발 도구에서도 지원됩니다.

참고:

  1. 이 단축 기술을 사용하기 전에 변수를 선언해야 합니다. 그렇지 않으면 ReferenceError가 발생합니다. 그러나 선택적 인수 또는 개체 속성 검사에는 안전하게 사용할 수 있습니다.
  2. 이 검사와 다르지만 동일하지 않은 변형에는 0, NaN, false 또는 빈 문자열인 변수가 포함됩니다.
<code class="javascript">if (!some_variable) {
    // some_variable is either null, undefined, 0, NaN, false, or an empty string
}</code>
  1. 일반적으로 ==보다 엄격한 동등 검사(===)를 사용하는 것이 선호됩니다. 그러나 권장되는 == null 비교는 이 규칙의 예외입니다.

업데이트 2021-03:

최신 브라우저는 Nullish 병합 연산자(? ?) 및 논리적 nullish 할당(??=)은 변수가 null 또는 null인 경우 기본값을 할당하는 간결한 방법을 제공합니다. 정의되지 않음:

<code class="javascript">if (a.speed == null) {
    // Set default if null or undefined
    a.speed = 42;
}</code>

Nullish 병합 연산자를 사용하여 다시 작성할 수 있습니다.

<code class="javascript">a.speed ??= 42;</code>

위 내용은 JavaScript에서 Null 또는 정의되지 않은 변수를 확실하게 확인할 수 있는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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