[JS] Number 메서드 정리 ( + Math 메서드)

이한솔·2023년 11월 9일
0

JavaScript

목록 보기
4/11

Number

자바스크립트에서 Number는 숫자 데이터 타입을 나타낸다. 여러 방법으로 숫자를 선언하고 사용할 수 있다.
  • 정수 및 소수 선언
let integerNumber = 10; // 정수
let floatNumber = 3.14; // 소수 (부동소수점 수)
  • 산술 연산
let num1 = 10;
let num2 = 5;

let sum = num1 + num2; // 덧셈: 15
let difference = num1 - num2; // 뺄셈: 5
let product = num1 * num2; // 곱셈: 50
let quotient = num1 / num2; // 나눗셈: 2

Number 메서드

parseInt()

문자열을 정수로 변화한다. 첫번째 인수는 변환하려는 문자열이고, 두번째 인수는 어떤 진수 체계로 표현되어있는지 나타낸다. 두번째 인수는 선택적이며 생략 시 10진수로 표현된 것으로 간주한다.

let stringNumber = "42";
let parsedInt = parseInt(stringNumber); // 42 (10진수로 해석됨)

let hexString = "2A";
let parsedHex = parseInt(hexString, 16); // 42 (16진수로 해석됨)

parseFloat

문자열을 부동소숫점 수로 변환한다. 정수 또는 소숫점 이하의 숫자로 이루어진 문자열을 전달 받는다.

let floatString = "3.14";
let parsedFloat = parseFloat(floatString); // 3.14

+) + 연산자를 사용하여 문자열을 숫자로 간단히 변환할 수 있다.

let stringNumber = "42";
let number = +stringNumber; // 42 (정수로 변환됨)

isNaN()

주어진 값이 NaN(Not a Number) 인지 여부를 확인한다. NaN은 숫자가 아님을 나타내는 값이다.

console.log(isNaN(10)); // false
console.log(isNaN("hello")); // true (숫자로 변환할 수 없는 문자열)
console.log(isNaN(NaN)); // true

isFinite()

주어진 값이 유한한 수인지 확인한다. Infinity나 NaN이 아닌 유한한 수를 나타내면 true를 반환한다.

console.log(isFinite(42)); // true
console.log(isFinite(Infinity)); // false
console.log(isFinite(NaN)); // false

isInteger()

주어진 값이 정수인지 여부를 확인한다. 정수일 경우 true를 반환하고 그렇지 않으면 false를 반환한다.

console.log(Number.isInteger(10)); // true
console.log(Number.isInteger(3.14)); // false

isSafeInteger()

주어진 값이 안전한 정수인지 여부를 확인한다. 안전한 정수는 -2^53 에서 2^53까지의 정수를 의미한다. 주어진 값이 안전한 정수 범위 내에 있으면 true를 반환한고, 그렇지 않으면 false를 반환한다.

console.log(Number.isSafeInteger(9007199254740992)); // false (범위를 벗어남)
console.log(Number.isSafeInteger(42)); // true (안전한 정수 범위 내)

toExponential()

숫자를 지수 표기법으로 변환한다. 전달받은 인수는 소숫점 뒤에 표시될 숫자의 개수를 나타낸다.

let number = 12345;
let exponentialForm = number.toExponential(2); // "1.23e+4"

toFixed()

숫자를 고정 소숫점 표기법으로 변환한다. 전달받은 인수는 소숫점 이하에 표시될 숫자의 개수를 나타낸다.

let number = 3.14159;
let fixedForm = number.toFixed(2); // "3.14"

toPrecision()

숫자를 주어진 정밀도로 표현한다.

let number = 123.456789;
let precisionForm = number.toPrecision(4); // "123.5"

toString()

숫자를 문자열로 변환한다. 전달받은 인수는 변환할 진수를 나타낸다. 이는 선택적 파라미터이며, 생략하면 10진수로 변환된다.

let number = 42;
let binaryString = number.toString(2); // "101010" (2진수로 변환됨)

valueOf()

Number 객체의 원시값을 반환한다. Number 객체를 원시값으로 변환하면 해당 숫자가 된다.

let numberObject = new Number(42);
let primitiveValue = numberObject.valueOf(); // 42
Number 메서드 요약
메서드 설명
parseInt() 문자열을 파싱하여, 문자열에 포함된 숫자 부분을 정수 형태로 반환
parseFloat() 문자열을 파싱하여, 문자열에 포함된 숫자 부분을 실수 형태로 반환
isNaN() 전달된 값이 NaN이 아닌지 검사함
isFinite() 전달된 값이 유한한 수인지 아닌지를 검사함
isInteger() 전달된 값이 정수인지 아닌지를 검사함
isSafeInteger() 전달된 값이 안전한 정수인지 아닌지를 검사함
toExponential() 지수 표기법으로 변환 후, 그 값을 문자열로 반환함.
isFixed() 소수 부분 자릿수를 전달 받은 값으로 고정한 후 그 값을 문자열로 반환함
toPrecision() 가수와 소수 부분의 합친 자릿수를 전달받은 값으로 고정한 후 그 값을 문자열로 반환함
toString() Number 인스턴스의 값을 문자열로 반환함
valueOf() Number 인스턴스가 가지고 있는 값을 반환함

숫자 연산을 위해 자바스크립트에서 제공하는 Math 메서드를 간단히 요약한다.

Math 메서드 요약
메서드 설명
Math.min() 인수로 전달 받은 값 중에서 가장 작은 수로 반환함
Math.max() 인수로 전달 받은 값 중에서 가장 큰 수를 반환함
Math.random() 0보다 크거나 같고 1보다 작은 랜덤 숫자를 반환함
Math.round() 전달 받은 값을 소숫점 첫번째 자리에서 반올림하여 그 결과를 반환함
Math.floor() 소숫점 이하를 버리고 주어진 숫자를 내림하여 반환
Math.ceil() 소숫점 이하를 버리고 주어진 숫자를 올림하여 반환
Math.abs() 전달 받은 수의 절댓값을 반환함
Math.sqrt() 전달 받은 수의 제곱근을 반환함
Math.cbrt() 전달 받은 수의 세제곱근을 반환함
profile
개인 공부용

0개의 댓글