js에서 bool 값을 변환하는 방법은 무엇입니까?

亚连
풀어 주다: 2018-06-19 14:04:25
원래의
3777명이 탐색했습니다.

이 글에서는 주로 js의 bool 값 변환 방법과 "&&", "||", "!!" 관련 내용을 소개하고 있으며, 샘플 코드를 통해 자세히 소개하고 있어 공부에 많은 도움이 됩니다. 또는 일할 수 있습니다. 도움이 필요한 친구들이 와서 아래를 살펴볼 수 있습니다.

머리말

가장 먼저 알아야 할 것은 js에는 false인 6가지 값이 있다는 것입니다. 즉: 0, '', null, unundefined, NaN 및 false, 기타(포함) {}, [], Infinity )은 true입니다.

Boolean() 함수를 사용하거나 두 번 부정하여 객체의 부울 값을 얻을 수 있습니다. 예를 들어 Boolean(undefine) 및 !!undefed도 부울 값을 얻을 수 있습니다. false,

For 0, '', null, undefine, NaN, {}, [], Infinity는 false인 부울 값을 찾습니다. false false false false true true true.

그래서 우리가 아는 한 가지는 부울 값입니다. 객체의 내용은 객체 {}인 경우에도 true입니다.

부울 값 변환

데이터 유형 부울 값 변환
undefine undefine이 false로 변환됨
Object null은 false로 변환되고, 나머지는 true입니다.
Boolean false는 false로 변환되고, true는 true로 변환됩니다
Number 0, NaN은 false로 변환되고, 나머지는 true
String ""이 false로 변환됩니다. other are true

"&&"

JavaScript의 "&&" 연산자는 다음과 같습니다.

&& 왼쪽 표현식의 값이 true인 경우, 오른쪽의 표현식이 반환되고, 그렇지 않으면 왼쪽 표현식의 값이 반환됩니다. 여러 && 표현식이 함께 평가되면 false로 평가되는 첫 번째 표현식의 값이 반환됩니다. 모든 표현식이 true로 평가되면 가장 오른쪽 표현식의 값이 반환됩니다.

const aa = {'name': 'xx'};
const bb = aa && aa.age; // bb输出为undefined;
let cc;
const dd = cc && cc.name ? cc.name : undefined; // dd输出为undefined
const dd = cc && cc.name; // dd输出为undefined;
로그인 후 복사

위 두 문장의 코드 실행 결과는 동일합니다. 이전에 코드를 작성할 때 항상 위의 방법을 사용했지만 일부 단일 테스트를 다룰 수 없어 단일 테스트 분기 적용 범위가 매우 낮은 것을 발견했습니다. 이 문제를 해결하기 위해 다음 방법으로 쉽게 변경할 수 있습니다. 이 두 문장의 효과는 동일합니다.

"||"

자바스크립트의 "||" 연산자 알고리즘은 다음과 같습니다.

"||"의 왼쪽에 있는 표현식의 값이 true인 경우 왼쪽 표현식은 반환된 값이고, 그렇지 않으면 오른쪽 표현식의 값을 반환합니다. 여러 개의 "||" 표현식을 함께 연산할 경우, 연산 결과가 true인 첫 번째 표현식의 값을 반환하고, 모든 표현식의 연산 결과가 false이면 가장 오른쪽 표현식의 값을 반환합니다.

const aa = false || 'xx'; // aa输出为'xx'
로그인 후 복사

"!!"

"!!" 표현식을 강제로 부울 값으로 변환하고, 연산 결과는 true 또는 false입니다.

const aa = 'xx';
const bb = !!aa; // bb输出为true
const cc = !!(NaN || undefined || null || 0 || '' ); // cc为false;
로그인 후 복사

위 내용은 모두를 위해 제가 정리한 내용입니다. 앞으로 모든 사람에게 도움이 되기를 바랍니다.

관련 기사:

Vuejs의 nextTick()을 통해 비동기 업데이트 큐 구현

3.js에서 3D 모델 디스플레이 구현 방법

Angular CLI 설치 튜토리얼

ReactNative를 사용하여 Toast 구현 방법

CommonsChunkPlugin을 사용하여 공개 모듈을 추출하는 방법

AngularJS에서 MVC에 대한 복잡한 작업이 있습니다

위 내용은 js에서 bool 값을 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
js
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿