10진수 -> 2진수 / 16진수
let num = 10;
num.toString(); // "10"
num.toString(2); // "1010"
let num2 = 255;
num2.toString(16); // "ff"
JS는 수학과 관련된 프로퍼티와 메소드들을 가지고 있는 Math라는 내장 객체가 있음
Math.PI; // 3.141592...
Math.ceil() : 올림
let num1= 5.1;
let num2= 5.7;
Math.ceil(num1); // 6
Math.ceil(num2); // 6
------------------------------
Math.floor() : 내림
Math.floor(num1); // 5
Math.floor(num2); // 5
------------------------------
Math.round() : 반올림
Math.round(num1); // 5
Math.round(num2); // 6
------------------------------
소수점 자릿수
let userRate = 30.1234;
요구사항 : 소수점 둘째자리 까지 표현 (셋째 자리에서 반올림)
Math.round(userRate * 100) / 100 // 30.12
또는
toFixed() 메소드 사용
userRate.toFixed(2); // 30.12
숫자 여부를 판별할 때 보통 사용한다
let x = Number('x');
x == NaN // false
x === NaN // false
NaN == NaN // false
isNaN(x) // true
isNaN(3) // false
-> isNaN 만이 NaN을 판별할 수 있음 !!!!
문자를 숫자로 바꾸어주는데 Number와 다른 점은 문자와 숫자가 함께 있는 문자열도 숫자로 변경해준다.
let margin = '10px';
parseInt(margin); // 10
Number(margin); // NaN
let redColor = 'f3';
parseInt(redColor); // NaN : 문자가 앞에 오기 때문에 NaN이 반환된다.
parseInt(redColor,16); //243 : 두번째 인자를 통해 16진수로 변환
parseInt('11',2) // 3 : 2진수를 10진수로 손쉽게 변환
parseInt() 와 동일하게 작업하지만 소숫점을 함께 반환
0~ 1사이 무작위 숫자 생성
Math.random() // 0.123124125125
Math.floor(Math.random()*100) + 1