자바스크립트 불린(boolean) 자료형에는 참(true)과 거짓(false)라는 두 개의 값밖에 없다.
보통 불린 값은 비교의 결과에 해당하며 자바스크립트의 제어 구조에 사용된다.
불린 값이 숫자 연산에 사용되면 참은 숫자 1로, 거짓은 숫자 0으로 변환된다. 다음 예제를 보자.
var boolean1 = true; var boolean2 = false; console.log(0 + boolean1); // 1 console.log(0 + boolean2); // 0
불린 값이 문자열 연산에 사용되면 참은 "true"라는 문자열로, 거짓은 "false"라는 문자열로 변환된다. 다음 예제를 보자.
var boolean1 = true; var boolean2 = false; console.log("" + boolean1); // "true" console.log("" + boolean2); // "false"
불린 값이 예상되는 곳에 숫자가 사용되면 해당 숫자가 거짓으로 변환되는 0이나 NaN이 아닌 이상 참으로 변환된다. 다음 예제를 보자.
var number1 = 1; var number2 = -1; var number3 = 0; var number4 = NaN; console.log(!!number1); // true console.log(!!number2); // true console.log(!!number3); // false console.log(!!number4); // false
불린 값이 예상되는 곳에 문자열이 사용되면 거짓으로 변환되는 빈 문자열인 경우를 제외하고 해당 문자열은 참으로 변환된다. 다음 예제를 보자.
var string1 = "abc"; var string2 = "false"; var string3 = ""; console.log(!!string1); // true console.log(!!string2); // true console.log(!!string3); // false
null과 undefined 값은 거짓으로 변환되며 널이 아닌 객체나 배열, 함수는 참으로 변환된다. 다음 예제를 보자.
var var1 = null; var var2 = undefined; var var3 = []; // 빈 배열 var var4 = {}; // 빈 객체 console.log(!!var1); // false console.log(!!var2); // false console.log(!!var3); // true console.log(!!var4); // true
불린 값으로 변환하는 명시적인 방법은 Boolean() 생성자를 호출하는 것이다.
console.log(Boolean(1)); // true console.log(Boolean(-1)); // true console.log(Boolean(0)); // false console.log(Boolean(NaN)); // false console.log(Boolean("abc")); // true console.log(Boolean("false")); // true console.log(Boolean("")); // false console.log(Boolean(null)); // false console.log(Boolean(undefined));// false console.log(Boolean([])); // true console.log(Boolean({})); // true
← 이전 | 홈 | 다음 → |