development

변수가 null이 아닌지 확인하는 방법?

big-blog 2020. 4. 2. 08:17
반응형

변수가 null이 아닌지 확인하는 방법?


변수가 아닌지 확인하는 JavaScript의 두 가지 방법이 아래에 있음을 알고 null있지만 사용하기 가장 좋은 방법은 혼란 스럽습니다.

내가해야합니까 :

if (myVar) {...}

또는

if (myVar !== null) {...}

그것들은 동등하지 않습니다. 첫 번째 진실한if 경우 (즉 , 조건부로 평가되는 경우 myVar) 명령문 다음에 블록을 실행하는 반면, 두 번째는 이외의 값 이면 블록을 실행합니다 .truemyVarnull

JavaScript에서 진실이 아닌 유일한 값은 다음과 같습니다 (일명 거짓 값).

  • null
  • undefined
  • 0
  • "" (빈 문자열)
  • false
  • NaN

변수가 NULL이 아닌지 테스트하는 방법은 다음과 같습니다.

if (myVar !== null) {...}

myVar가 null이 아닌 경우 블록이 실행됩니다. myVar가 정의되지 않았거나 false이거나 0또는 NaN다른 항목 인 경우 실행됩니다 .


이 게시물을 읽으십시오 : http://enterprisejquery.com/2010/10/how-good-c-habits-can-encourage-bad-javascript-habits-part-2/

일반적으로 JavaScript에 대한 유용한 팁이 있지만 언급 한 가지는 다음과 같이 null을 확인해야한다는 것입니다.

if(myvar) { }

또한 당신이 깨달을 수없는 '거짓'으로 간주되는 것을 언급합니다.


  • 내부의 코드 는 다음과 같은 if(myVar) { code }경우에만 실행되지 않습니다 myVar: false, 0, "", null, undefined, NaN또는 변수를 정의하지 마십시오 myVar(추가로 코드 실행을 중지하고 예외를 throw).
  • 내부의 코드 는 같 거나 정의 if(myVar !== null) {code}하지 않은 경우에만 실행되지 않습니다 (예외 발생).myVarnull

여기에 모든 것이 있습니다 ( src )

만약

여기에 이미지 설명을 입력하십시오

== (그것의 부정 ! = )

여기에 이미지 설명을 입력하십시오

=== (그것의 부정 ! == )

여기에 이미지 설명을 입력하십시오


내가 방금 본 또 다른 가능한 시나리오가 있습니다.

나는 아약스 호출을하고 문자열 형식으로 데이터를 null로 되 돌렸다. 나는 이것을 다음과 같이 확인해야했다.

if(value != 'null'){}

따라서 null은 실제로 null이 아닌 "null"을 읽는 문자열이었습니다.

편집 : 내가 해야방식으로 이것을 판매하지 않는다는 것을 이해해야합니다 . 이것이 유일한 방법 인 시나리오가있었습니다. 왜 백엔드를 쓴 사람이 데이터를 잘못 표시했는지 확실하지 않지만 실제로는 이것이 현실입니다. 그것이 옳지 않다는 것을 이해 한 사람이 실제로 투표 한 것을 보았을 때 실제로 도움이되는 사람에 의해 투표되는 것을 보는 것은 실망 스럽습니다.


if myVar가 null이면 block이 다른 방식으로 실행되지 않으면 실행됩니다.

if (myVar != null) {...}


때로는 정의되지 않은 경우 준비하는 것이 좋습니다. 이를 위해 typeof를 사용했습니다.

if(typeof(variable) !== "undefined") {
    //it exist
    if(variable !== null) {
        //and is not null
    }
    else {
        //but is null
    }
}
else {
    //it doesn't
}

여기에 나열된 두 가지 조건문은 서로보다 낫지 않습니다. 사용 상황에 따라 다릅니다. 두 번째 예에서는 오타가 있습니다. 느낌표 뒤에는 등호가 하나만 있어야합니다.

첫 번째 예는 myVar 의 값 이 true 인지 확인 하고 {...} 내부의 코드를 실행합니다 .

두 번째 예는 myVar 가 null이 아닌지 평가 하고,이 경우 true이면 {...} 내부에서 코드를 실행합니다 .

더 많은 기술에 대한 조건문을 살펴 보는 것이 좋습니다. 일단 익숙해지면 필요할 때 결정할 수 있습니다.

참고 URL : https://stackoverflow.com/questions/4361585/how-to-check-if-a-variable-is-not-null

반응형