본문 바로가기

JavaScript/JavaScript기초

[Javascript] 숫자형

숫자를 입력하는 방법

20억을 입력해야 할 때 아래와 같이 입력할 수 있음

let bil = 20000000000

 

하지만 0 이 너무 많아 보기도 불편하고 실수 할 수 있어서 아래와 같이 바꿔 입력할 수 있음

let bil = 2e9 // 2 와 뒤에 0 9개를 입력한다는 의미

e는 왼쪽의 수에 오른쪽의 숫자만큼 10의 거듭제곱을 곱함

 

e- 를 붙이면 오른쪽의 숫자만큼 10의 거듭제곱을 나눔

1e-4 === 0.0001 //true

1e-3 === 1 / 1000 //true

 

16 , 8 , 2진수의 입력

16진수 : 0x를 앞에 붙혀서 표현

8진수: 0o를 앞에 붙혀서 표현

2진수: 0b를 앞에 붙혀서 표현

let 0xFF // 10진수 255를 표현
let 0o377 // 8진수 255를 표현
let 0b11111111 // 2진수 255를 표현

 

toString()

number.toString( 진수 ) 메서드는 number 를 괄호안의 진수로 변경하여 문자열로 반환 해 줌

let number = 255

number.toString(16); // ff
number.toString(8); // 377
number.toString(2); // 11111111

 

 

어림수

Math.floor : 소수점 첫째 자리에서 내림 5.2 -> 5 , -2.1 -> -3

 

Math.ceil : 소수점 첫째 자리에서 올림 4.1 -> 5 , -2.5 -> -2

 

Math.round : 소수점 첫째 자리에서 반올림 3.1 -> 3 , 4.6 -> 5

 

Math.trunc : 소수점 아래 숫자를 무시 3.1 -> 3 , -5.3 -> -5

 

 

소수점 자리도 남기며 올림, 내림을 하고싶은 경우

let number = 1.3456;

console.log(Math.floor(number * 100) /100) // 소수점 2번째 자리인 1.34

console.log(number.toFixed(2)) // 매개변수로 원하는 소수점 위치까지 입력 1.34

console.log(number.toFixed(5)) //길이를 넘을시 뒤에 자동으로 0이 붙음 1.34560

 

 

parseInt 와 parseFloat

문자열을 Number()로 변환시 숫자형태가 아니라 문자가 들어가면 NaN(Not a Number) 를 반환함

console.log(Number("123em")); // NaN

 

하지만 paresInt 와 parseFloat 사용 시 앞에서 부터 읽으며 숫자가 아닌 문자가 나오면 멈추고 앞에 숫자들을 반환함

console.log(parseInt("300px")) //문자인 p 전의 300 을 반환
console.log(parseInt("23.1")) // Int(정수)로 변환하는 것이기 때문에 23을 반환

console.log(parseFloat("22.1a")) // a앞의 22.1을 반환
console.log(parseFloat("22.3.1")) // 첫번째 점까지만 읽고 두번째점부터는 중지. 22.3 반환

console.log(parseInt("b123")) // 첫번째 문자가 숫자가 아니므로 NaN 반환

 

기타 숫자관련 함수

Math.random() : 0 ~ 1 사이의 난수를 반환(1제외)

 

Math.max( n1, n2, n3 ...) / Math.min( n1, n2, n3 ...) : 매개변수 중 최대 / 최소값을 반환

 

Math.pow(n , pw) : n 을 pw번 거듭제곱

 

 

 

참조:https://javascript.info/number

'JavaScript > JavaScript기초' 카테고리의 다른 글

[Javascript] 배열의 메서드2  (0) 2021.08.31
[Javascript] 배열의 메서드1  (0) 2021.08.31
[Javascript] 객체 - 메서드와 this  (0) 2021.08.27
[Javascript] 객체  (0) 2021.08.27
[Javascript] 배열과 객체의 Copy  (0) 2021.08.27