멀미날 것 같은 형변환 @-@
숫자.toString() 이 문자형으로 바꿔주는 함수인줄 알았는데 문제를 풀다보니 원래의 기능은 따로 있었고,
숫자형으로 바꿔주는 Number(숫자모양의문자)처럼 문자형으로 바꿔주는 String(숫자) 메소드가 따로 있었다.
그래서 정리 정리!
String(숫자)
우선 문자로의 형변환이 목적이라면 String(숫자) 를 사용하는것이 바람직하다.
괄호속 변수가 꼭 숫자가 아니더라도
이렇게 String으로 감싸준 요소는 모두 문자형으로 변환되서 string 타입으로 바뀌게 된다.
편견없이 문자 그자체로 바꿔줌
숫자.toString()
.toString() 은 원래 진법을 바꿔주는 메소드다.
알고리즘 문제를 풀다보니 이 메소드만 사용하면 진법변환은 끝난다는것을 알게 됐다.
괄호 속에 들어간 숫자대로 10진법 숫자를 해당진법으로 변환시키고 타입은 문자형으로 반환한다.
*변환 된 결과물 숫자 아님 주의
괄호속의 숫자는 진법을 나타내므로 2~36사이의 정수가 들어가야 하고,
그 외의 수가 들어갈 경우 에러가 난다.
괄호에 아무 숫자도 입력하지 않으면 그대로 10진법으로 인식해서 결과적으로는 형변환만 된 형태로 반환된다.
그래서 문자형으로 변환하는 메소드로 알고 있던 것.
결과적으로는 형변환이 되는 방법이지만,
undefined 또는 null에 사용하게 되면 string타입으로 바뀌는 것이 아니라 에러로 인식된다.
의문)
숫자에 직접 .toString()을 쓰면 왜 에러가 나나? --> (42).toString(2) 이렇게 숫자를 괄호에 담아주면 인식이 된다.
'고군분투' 카테고리의 다른 글
프로젝트 생성 명령어 npm init, npm create, npx 비교 (0) | 2025.01.29 |
---|---|
[VS code 확장팩] CSS Peek - css적용 쉽게 하기 (0) | 2022.10.08 |
[VS code 확장팩] Live Preview - 화면분할 미리보기 (0) | 2022.10.08 |
onclick ="close()" 는 작동이 안되는 코드다 (0) | 2022.10.07 |
실수찾기 (0) | 2022.09.14 |