값의 타입을 변환하는 방식은 2 가지가 있다.
const x = 10;
const str = x + '';
console.log(typeof str, str) //string 10
console.log(typeof x, x) //number 10
자바스크립트 엔진은 표현식 x + ''을 평가하기 위해 x 변수의 숫자 값을 바탕으로 새로운 문자열 값 '10'을 생성하여 10 +''를 평가한다.
이 때 암묵적으로 생성된 문자열 '10'은 x변수에 재할당되지 않는다.
암묵적 타입변환은 기존 변수의 값을 문자열로 재할당해 변경하지 않았다.
암묵적으로 타입변환한 새로운 타입의 값을 만들어 사용하고 버린 것이다.
암묵적 타입변환의 종류를 더 자세히 알아보자.
x + 문자열 = 문자열
1 + '2' //'12'
산술연산자
1 - '1' //0
1 * '10' //1
1 / 'one' //NaN
제어문,삼항 조건 연산자
if('') console.log(x);