[JavaScript] Integer로 변환 | BigInt

해버니·2023년 1월 18일
0

JavaScript

목록 보기
5/5
post-thumbnail
post-custom-banner

Float을 Integer로


parseInt()

parseInt(string)는 문자열을 인자로 받고, Number 타입으로 변환한다.

parseInt(string) : number
var angel = "1004"

typeof angel	//	'string'


var a = parseInt(angel);

typeof a		//	'number'


var num2 = 1004.4;

var answer = parseInt(num2);

answer			//	1004




실수를 실수 넘버로 바꾸고 싶다면
parseInt()가 아니라 parseFloat()을 쓰면 된다.






Number.toFixed()

Number.toFixed(0) 소수점 이하 숫자를 버리고 정수만 리턴한다.
Number.toFixed(2) -> '2'숫자를 넣으면 넣은 숫자의 크기만큼 소수점을 표현할 수 있다.
이것은 Number에서 제공하는 함수이기 때문에 String 타입에서는 사용할 수 없다.


var num1 = 1004;
var num2 = 1004.4;
var num3 = -1004.4;

num1.toFixed()		//	'1004'
num2.toFixed()		//	'1004'
num3.toFixed()		//	'-1004'

num1.toFixed(2)		//	'1004.00'
num2.toFixed(2)		//	'1004.40'
num3.toFixed(2)		//	'-1004.40'






Math.trunc(), floor(), round(), ceil()

Math의 함수를 이용하여 소수를 제거할 수 있다.


var num1 = 1004;
var num2 = 1004.4;
var num3 = -1004.4;
var num4 = "1004.4";

// 소수 부분 모두 버림
Math.trunc(num1)		//	1004
Math.trunc(num2)		//	1004
Math.trunc(num3)		//	-1004
Math.trunc(num4)		//	1004

// 소수 첫째 자리에서 버림하여 정수로 만듦
Math.floor(num1)		//	1004
Math.floor(num2)		//	1004
Math.floor(num3)		//	-1005
Math.floor(num4)		//	1004

// 소수 첫째 자리에서 올림하여 정수로 만듦
Math.ceil(num1)			//	1004
Math.ceil(num2)			//	1005
Math.ceil(num3)			//	-1004
Math.ceil(num4)			//	1005

// 소수 첫째 자리에서 반올림하여 정수로 만듦
Math.round(num1)		//	1004
Math.round(num2)		//	1004
Math.round(num3)		//	-1004
Math.round(num4)		//	1004








BigInt

BigInt는 Number 원시 값이 안정적으로 나타낼 수 있는 최대치인 2^53-1 보다 큰 정수를 표현할 수 있는 내장 객체이다.



어떻게 표현할까?

① 정수 리터럴의 뒤에 n을 붙이기
② 함수 BigInt()를 호출해 생성


const theBiggestInt = 9007199254740991n;

const alsoHuge = BigInt(9007199254740991);
alsoHuge	//	9007199254740991n

const hugeString = BigInt("9007199254740991");
hugeString	//	9007199254740991n

const hugeHex = BigInt("0x1fffffffffffff");
hugeHex		//	9007199254740991n

const hugeBin = BigInt("0b11111111111111111111111111111111111111111111111111111");
hugeBin		//	9007199254740991n






post-custom-banner

0개의 댓글