728x90
728x90
여기다 뭘 쓸까 했는데, 공부하다가 충격적인거 쓰면 될 듯하다.
코테 연습문제 풀고, 다른사람 풀이 보다가 알게 된건데,
string 앞에다가 + 붙이면 number 로 바뀜
number + ''하면 string 으로 바뀜
엌ㅋㅋㅋㅋㅋㅋ
const a = 1 + '';
const b = +'2';
console.log(typeof a, a); //string 1
console.log(typeof b, b); //number 2
우리집 시니어 개발자한테 물어봤더니
책에서 관련 내용 찾아주면서 읽어보라했당ㅎㅎ
타입변환에는 두가지 종류가 있다.
첫번째는 개발자가 의도적으로 타입을 변경하는
명시적 타입변환(explicit coercion)
두번째는 자바스크립트 엔진에 의한 자동변환인
암묵적 타입변환(implicit coercion)
이 있다
내가 보고 이게 뭐야 했던 부분은 암묵적 타입변환이다.
number -> string
String(1) // "1"
(1).toString // "1"
1 + '' // "1"
1. String 생성자 함수
2. toString method
3. 암묵적 타입 변환인 +''
string -> number
Number('1'); //1
parseInt('1'); //1
parseFloat('1'); //1
'1' * 1; //1
+'1' //1
1. Number 생성자 함수
2. parseInt, parseFloat 함수
3. 암묵적 타입변화인 *산술 연산자 이용
4. 마찬가지로 암묵적 타입변화인 +단항 산술 연산자 이용
암묵적 타입변화가 솔직히 간결하고 조금만 생각해보면 또 이해가 될랑말랑한 느낌이라
실제로 쓰기에는 편할것 같은데
나처럼 모르는 사람이 보면 뭔데 이게 싶지 않을까 싶다.
아.. 나만 몰랐던 걸 수도..
뭐 무튼 편해보이긴 하는데
생긴게 "불-편" 하다
728x90
728x90
'Study > JavaScript' 카테고리의 다른 글
내 애착 메소드 Array.from 으로 표 만들기 (0) | 2021.12.03 |
---|---|
Number() 와 parseFloat() 그리고 킹받는 8진법 (0) | 2021.11.29 |
프로토타입의 교체. (0) | 2021.11.29 |
number사이에 string이 있어도 number다. (0) | 2021.11.24 |
includes로 NaN을 확인 할 수 있을까? (0) | 2021.11.24 |
댓글