[JS_오답노트]_형변환

hanseungjune·2022년 5월 29일
0

JavaScript

목록 보기
6/87
post-thumbnail

일단 필기!


// 형변환 => String(), Number(), Boolean()
let x = '문자';
let x2 = '123';
let y = true;
let y2 = false;

console.log(Number(x));       //NaN
console.log(Number(x2));      //123
console.log(Number(y));       //1
console.log(Number(y2));      //0

// 0, false, '', NaN 을 false로 간주한다.

console.log(Boolean('문자'));	//true
console.log(Boolean('123'));	//true
console.log(Boolean(''));		//false
console.log(Boolean(0));		//false
console.log(Boolean(NaN));		//false

// 비교가 불가능한 경우에는 'false' 가 나온다.

console.log('two' >= 1);	//false

// '=='는 자동으로 형변환이 될 수 있다.
console.log(1 === '1');       //false
console.log(1 === true);      //false
console.log(1 == '1');        //true
console.log(1 == true);       //true

작성 이유

모든 '문자' 를 숫자형으로 바꿀 수 있다고 생각했지만, '숫자 문자열'은 가능하고, '그 이외의 문자열'은 숫자형으로 형변환 되지 못한다는 것을 이번에 알게됨

FALSE 는 0 , '', NaN

비교가 불가능하면 무조건 False

=== 으로 하면 가급적 편하다 ( 완전히 정확한 값을 말해주기 때문이다. )

profile
필요하다면 공부하는 개발자, 한승준

0개의 댓글