js 빈 값 판단 방법

2451 단어
전단 개발 자로 서 js 가 빈 값 을 판단 하 는 장면 을 자주 만난다.이전에 빈 값 을 판단 하면 많은 && 과 연산 을 써 서 각종 이상 상황 을 제거 할 것 이다.뒤에서 일부 사람들 이 ! 비 연산 을 사용 한 것 을 발견 한 후에 다시 그것 을 사용 하기 시작 했다. 그 다음 에 일부 사람들 이 || 또는 연산 과 '' 빈 값 을 비교 한 후에 다시 그것 을 사용 하기 시작 했다.이렇게 오래 걸 렸 는데 도 아무런 문제 도 발견 하지 못 했다.그 결과 이번에 백 엔 드 에서 돌아 온 제 이 슨 을 분석 할 때 문제 가 생 겼 기 때문에 시간 을 들 여 자신 이 관련 된 검증 테스트 대 비 를 하여 자신 이 잘 알 고 있 는 것 을 편리 하 게 하기 로 결정 했다.
js 빈 값 판단 방법
내 가 현재 비교적 많이 쓰 는 것 은:
  • !exp 비 연산;
  • (exp||'')=='' 또는 연산 과 '' 빈 값 비교.물론 이렇게 쓸 수도 있다 !(exp||'')
  • 테스트 코드 먼저 올 리 기:
    14:48:36.569 !undefined
    14:48:36.582 true
    14:48:39.772 !null
    14:48:39.782 true
    14:48:50.949 !{}
    14:48:50.955 false
    14:49:04.523 ![]
    14:49:04.529 false
    14:49:13.672 !''
    14:49:13.678 true
    14:49:31.590 !false
    14:49:31.595 true
    14:49:41.325 !0
    14:49:41.331 true
    14:49:54.802 !'0'
    14:49:54.810 false
    14:54:32.478 (undefined||'')==''
    14:54:32.486 true
    14:54:39.293 (null||'')==''
    14:54:39.301 true
    14:54:44.883 ({}||'')==''
    14:54:44.891 false
    14:54:49.698 ([]||'')==''
    14:54:49.706 true
    14:55:23.469 (''||'')==''
    14:55:23.475 true
    14:55:34.095 (false||'')==''
    14:55:34.104 true
    14:55:45.016 (0||'')==''
    14:55:45.026 true
    14:55:51.745 ('0'||'')==''
    14:55:51.755 false
    

    비교 표: (true 빈 값, false 비 어 있 지 않 음)
    방법 / exp
    undefined
    null
    {}
    []
    ''
    false
    0
    '0'
    !exp
    true
    true
    false
    false
    true
    true
    true
    false
    (exp||'')==''
    true
    true
    false
    true
    true
    true
    true
    false
    기타 방법
    표를 통 해 알 수 있 듯 이 (여기 서 exp 가 {} 대상 인 경 우 를 잠시 버 립 니 다)
  • 장면: [] 배열 을 고려 하지 않 고 두 가지 방법 을 모두 사용 할 수 있다.
  • 장면: false (Boolean 유형) 와 0 (Number 유형) 은 빈 값 으로 처리 할 수 있 고 두 가지 방법 이 모두 사용 할 수 있 습 니 다.
  • 장면: 0 을 정상 치 로 보고 && exp!==0
  • 장면: false 는 정상 치 로 간주 하고 && exp!==false
  • if(!exp){ 
    //   
    //todo ...
    }
    // 
    if((exp||'')==''){ 
    //   
    //todo ...
    }
    // 
    if(!(exp||'')){ 
    //   
    //todo ...
    }
    

    따라서 추천 문법: !(exp||'').

    좋은 웹페이지 즐겨찾기