JS 문법 - Number 자료형

KODYwiththeK·2022년 12월 2일
0

JavaScript

목록 보기
10/32

JS 문법 - Number 자료형

Class: 제로베이스
Created: November 30, 2022 3:46 PM
Type: Javascript
강의 명: 이론부터 실전까지 모든 것을 담은 자료구조/알고리즘

Number 자료형

자바스크립트에서 일반적인 숫자는 64비트 형식의 IEEE-754 표준 기반 형태로 저장되는 자료형

  • 10진수 외에도 16진수, 2진수 8진수의 다양한 진수 사용
    • 16진수(Hexadeciaml)표기: 0xFF
    • 8진수(Octal)표기: 0o71
    • 2진수(Binary)표기: 0b1101
  • 대표 상수 값
    • [MAX | MIN]_VALUE
    • [MAX | MIN]_SAFE_INTEGER,
    • [POSITIVE | NEGATIVE]_INFINITY, NaN
  • 대표 메서드
    • 문자열로 변환: Number.toString( )
    • 특정 자리수까지 제한한 숫자 표현: Number.toFiced( ), Number.toPrecision( )
    • 타입 확인: Number.isNaN( ), Number.isFinite( )

지수 / 진법

지수 표기법

아주 큰 숫자나 아주 작은 숫자를 표기하기 위해 지수 표기법(e)으로 0의 개수를 대체 표기 가능.

진법 표기

진법 표기를 지원하기 위해 0x(16진수), 0o(8진수), 0b(2진수) 로 N진수 표기 가능

Number 상수 값

  • 지수로 표기되는 양수 최대/최소 값: Number.MAX_VALUE, Number.MIN_VALUE
  • 안전하게 표기되는 최대(양수) / 최소(음수)값:
    • Number.MAX_SAFE_INTEGER
    • Number.MIN_SAFE_INTEGER
  • 무한대 양수/음수 값: Number.POSITIVE_INFINITY, Number.NEGATIVE_INFINITY
  • 부동 소수점 산술에서 정의되지 않거나 표현할 수 없는 값으로 해석될 수 있는 숫자 데이터 유형: Number.NaN

대표 메서드

형 변환

숫자 → 문자 형변환: Number.toString( ) , String(Number) , Number+””

let us = 1e-6

console.log(us.toString()); // o.ooooo1
console.log(String(us)); // o.ooooo1
console.log((us + "")); // o.ooooo1

자리수 표현

소수의 자리 수 길이를 제한: Number.toFiced(pos)
정수와 소수의 자리수를 합한 길이로 제한: Number.toPrecision(pos)

let num1 = 125.0;
let num2 = 123.456;

console.log(num1-num2); // 1.543999999999997
console.log((num1-num2).toFixed(3)); // 1.544
console.log((num1-num2).toPrecision(3)); // 1.54

Number 자료형 확인

  • 부동 소수점 산술에서 정의되지 않거나 표현할 수 없는 값(NaN) 확인: Number.isNan( )
  • 정상적인 유한수인지 확인: Number.isFinite( )
// 숫자가 아니면 true
console.log(Number.isNaN(0.123)); // false
console.log(!Number.isNaN(123 / "hi")) // false
// 유한수인지 판단
console.log(Number.isFinite(-123)); // true
console.log(Number.isFinite(Infinity)); // false
console.log(Number.isFinite("hello"));  // false

정수와 실수 형 변환

  • 정수로 변환하는 방법(N진수로 명시적 변환도 가능): Number.parseInt( )
  • 실수로 변환하는 방법: Number.parseFloat( )
console.log(Number.parseInt("125px")); // 125
console.log(parseInt("123px")); // 123
console.log(parseFloat("1.25em")); // 1.25
profile
일상 속 선한 영향력을 만드는 개발자를 꿈꿉니다🧑🏻‍💻

0개의 댓글

관련 채용 정보