[ 문자를 숫자로 ]
▶ Number()
인자로 전달된 문자열을 Number로 변환
숫자가 아닌 문자나 undefined 등을 인자로 전달하면 NaN(Not A Number)을 리턴
→ NaN의 의미는 숫자가 아니지만 NaN의 객체 타입은 number임
console.log(Number("1234") + ', ' + typeof(Number("1234"))); //1234, number
console.log(Number("1234.5") + ', ' + typeof(Number("1234.5"))); //1234.5, number
console.log(Number(undefined) + ', ' + typeof(Number(undefined))); //NaN, number
console.log(Number("abcd") + ', ' + typeof(Number("abcd"))); //NaN, number
▶ parseInt()
인자로 전달된 문자열을 정수의 Number로 변환
소수를 갖고 있는 실수는 정수로 변환됨
console.log(parseInt("1234") + ', ' + typeof(parseInt("1234"))); //1234, number
console.log(parseInt("1234.5") + ', ' + typeof(parseInt("1234.5"))); //1234, number
console.log(parseInt(undefined) + ', ' + typeof(parseInt(undefined))); //NaN, number
console.log(parseInt("abcd") + ', ' + typeof(parseInt("abcd"))); //NaN, number
▶ parseFloat()
인자로 전달된 문자열을 Number로 변환
소수를 갖고 있는 실수는 그대로 실수로 변환됨
console.log(parseFloat("1234") + ', ' + typeof(parseFloat("1234"))); //1234, number
console.log(parseFloat("1234.5") + ', ' + typeof(parseFloat("1234.5"))); //1234.5, number
console.log(parseFloat(undefined) + ', ' + typeof(parseFloat(undefined))); //NaN, number
console.log(parseFloat("abcd") + ', ' + typeof(parseFloat("abcd"))); //NaN, number
▶ Math.로 문자열을 숫자로 변환
Math의 ceil(올림), round(반올림), floor(버림) 메소드들은 인자로 문자열을 받으며 숫자로 변환함
console.log(Math.ceil("1234.6") + ', ' + typeof(Math.ceil("1234.6"))); //1235, number
console.log(Math.floor("1234.6") + ', ' + typeof(Math.floor("1234.6"))); //1234, number
console.log(Math.round("1234.6") + ', ' + typeof(Math.round("1234.6"))); //1235, number
console.log(Math.round("1234.6") + ', ' + typeof(Math.round("1234.6"))); //1235, number
▶ 단항 연산자로 문자열을 숫자로 변환
+연산자는 피연산자를 Number타입으로 변환하고 -연산자는 피연산자를 음수인 Number 타입으로 변환함
단항연산자는 문자열에 따라 정수 또는 실수로 자동 변환됨
문자열이 아닌 true, false, null도 숫자로 변환함
단항 연산자가 숫자로 해석할 수 없으면 NaN을 반환함
console.log(+"10"); //10
console.log(-"10"); //-10
console.log(+"10.123"); //10.123
console.log(-"10.123"); //-10.123
console.log(+true); //1
console.log(+false); //0
console.log(+null); //0
console.log(+"abc"); //NaN
[ 숫자를 문자로 ]
▶ .toString()
toString() 메소드를 호출하여 숫자를 문자열로 변환
인자로 base숫자를 입력해줄 경우, 해당 진법으로 숫자를 변환하여 문자열로 리턴함
console.log((1234).toString() + ", " + typeof (1234).toString()); //1234, string
console.log((1234.5).toString() + ", " + typeof (1234.5).toString()); //1234.5, string
console.log((3).toString(2) + ", " + typeof (3).toString(2)); //11, string
▶ String()
인자로 전달된 숫자를 String으로 변환
console.log(String(1234) + ", " + typeof String(1234)); //1234, string
console.log(String(1234.5) + ", " + typeof String(1234.5)); //1234.5, string
▶Template String(템플릿 문자열)
const number = 1234;
const number2 = 1234.5;
console.log(`${number}` + ", " + typeof `${number}`); //1234, string
console.log(`${number2}` + ", " + typeof `${number2}`); //1234.5, string
▶ 숫자 뒤에 ""(빈문자열) 붙이기
가장 많이 사용하는 방법
console.log(1234 + "" + ", " + typeof (1234 + "")); //1234, string
console.log(1234.5 + "" + ", " + typeof (1234.5 + "")); //1234.5, string
'JS' 카테고리의 다른 글
JS, Array의 min, max값 찾기 (0) | 2023.06.05 |
---|---|
JS, map & filter & reduce (0) | 2023.05.30 |
JS, 문자 혹은 문자열 찾기 (0) | 2023.05.27 |
JS, 문자열을 배열로&배열을 문자열로 (1) | 2023.05.27 |
JS, Math. (0) | 2023.05.26 |
댓글