boolean 과 false

누워서 하는 코딩·2022년 9월 2일
0

불리언(Boolean)은 참/거짓, yes/no, on/off를 의미하는 true와 false 두 개의 값을 가지고 있는 데이터 타입이다. 숫자 0은 false로 변환되고 0 이외의 모든 숫자는 true로 변환된다.

자바스크립트 에서 false 가 될수 있는 값은 아래와 같다.

false

undefined

null

0

-0

Nan

"" (빈문자형)

(주의할 점은 빈 문자열은 false 이지만 빈 배열, 빈 객체는 true라는 것이다.)->왤까?

Boolean("")
false
Boolean([])
true
Boolean({})
true

1.Undefined

자바스크립트에서는 (자바 같은 언어와 달리) 변수의 자료형을 별도로 표기하지 않고, 변수에 담기게 되는 값에 따라 자료형이 결정되게 된다. 이러한 특징때문에 undefined라는 상태를 다루게 되는데, 'undefined'라는 키워드는 해당 변수의 자료형이 정해지지 않았음을 나타낸다.모든 변수에 값이 할당 되지 않는 경우 이 undefined는 값으로써 값이 할당되지 않은 모든 변수들이 자바스크립트 Runtime 시 할당되어 출력되게 된다.

2.null

변수는 존재하나, null 로 (값이) 할당된 상태. 즉 null은 자료형이 정해진(defined) 상태이다.->의도적 할당

var var1; //undefined (어떤 값도 할당되지 않아서 자료형을 알 수 없음)
var var2 = null; //null (null로 (값이) 할당되어서 자료형을 알 수 있음 - null의 자료형은 object다.)

3.NaN

Not a Number의 약자. 숫자가 아닐때 나오는 값
NaN은 그 자신과 같지 않은 유일한 자료형이다.
이는 JavaScript 언어 설계의 오류라고 한다.

undefined == undefined
true
null == null
true
NaN == NaN
false

네줄요약

선언은 되었으나 값이 할당 되지 않은 상태 (초기화 안하면 무조건 undefined 상태): undefined

아무런 값도 나타내지 않는 특수한 값:null

JS에서만 존재하는 '숫자가 아니다'를 의미하는 값:NaN

셋의 공통점: Boolean()에 넣으면 false 출력 ,투명한 값

0개의 댓글