28μž₯ Number

28.1 Number μƒμ„±μž ν•¨μˆ˜

const numObj = new Number()
console.log(numObj) // Number{[[PrimitiveValue]]: 0}

const numObj = new Number(10)
console.log(numObj) // Number{[[PrimitiveValue]]: 10}

28.2 Number ν”„λ‘œνΌν‹°

28.2.1 Number.EPSILON

λΆ€λ™μ†Œμˆ˜μ μœΌλ‘œ 인해 λ°œμƒν•˜λŠ” 였차λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄ μ‚¬μš©ν•œλ‹€.

28.2.2 Number.MAX_VALUE

JSμ—μ„œ ν‘œν˜„ν•  수 μžˆλŠ” κ°€μž₯ 큰 μ–‘μˆ˜ κ°’

28.2.3 Number.MIN_VALUE

JSμ—μ„œ ν‘œν˜„ν•  수 μžˆλŠ” κ°€μž₯ μž‘μ€ μ–‘μˆ˜ κ°’

28.2.4 Number.MAX_SAFE_INTEGER

JSμ—μ„œ ν‘œν˜„ν•  수 μžˆλŠ” κ°€μž₯ 큰 μ •μˆ˜κ°’

28.2.5 Number.MIN_SAFE_INTEGER

JSμ—μ„œ ν‘œν˜„ν•  수 μžˆλŠ” κ°€μž₯ μž‘μ€ μ •μˆ˜κ°’

28.2.6 Number.POSITIVE_INFINITY

μ–‘μ˜ λ¬΄ν•œλŒ€, Infinity와 κ°™λ‹€

28.2.7 Number.NEGATIVE_INFINITY

음의 λ¬΄ν•œλŒ€, -Infinity와 κ°™λ‹€

28.2.8 Number.NaN

μˆ«μžκ°€ μ•„λ‹˜μ„ λ‚˜νƒ€λ‚΄λŠ” μˆ«μžκ°’


28.3 Number λ©”μ„œλ“œ

28.3.1 Number.isFinite

ES6μ—μ„œ λ„μž….

인수둜 μ „λ‹¬λœ μˆ«μžκ°’μ΄ 정상적인 μœ ν•œμˆ˜μΈμ§€ 검사해 λΆˆλ¦¬μ–Έ κ°’ λ°˜ν™˜

암묡적 νƒ€μž… λ³€ν™˜ x

28.3.2 Number.isInteger

ES6μ—μ„œ λ„μž….

인수둜 μ „λ‹¬λœ μˆ«μžκ°’μ΄ μ •μˆ˜μΈμ§€ 검사해 λΆˆλ¦¬μ–Έ κ°’ λ°˜ν™˜

암묡적 νƒ€μž… λ³€ν™˜ x

28.3.3 Number.isNaN

ES6μ—μ„œ λ„μž….

인수둜 μ „λ‹¬λœ μˆ«μžκ°’μ΄ NaN인지 검사해 λΆˆλ¦¬μ–Έ κ°’ λ°˜ν™˜

암묡적 νƒ€μž… λ³€ν™˜ x

28.3.4 Number.isSafeInteger

ES6μ—μ„œ λ„μž….

인수둜 μ „λ‹¬λœ μˆ«μžκ°’μ΄ μ•ˆμ „ν•œ μ •μˆ˜μΈμ§€ 검사해 λΆˆλ¦¬μ–Έ κ°’ λ°˜ν™˜

암묡적 νƒ€μž… λ³€ν™˜ x

28.3.5 Number.prototype.toExponential

숫자λ₯Ό μ§€μˆ˜ ν‘œκΈ°λ²•μœΌλ‘œ λ³€ν™˜ν•΄ λ¬Έμžμ—΄λ‘œ λ°˜ν™˜ν•œλ‹€.

(77.1234).toExponential() // "7.71234e+1"
(77.1234).toExponential(4) // "7.7123e+1"
(77.1234).toExponential(2) // "7.71e+1"

28.3.6 Number.prototype.toFixed

숫자λ₯Ό λ°˜μ˜¬λ¦Όν•΄ λ¬Έμžμ—΄λ‘œ λ°˜ν™˜

(12345.6789).toFixed() // "12346"
(12345.6789).toFixed(1) // "12345.7"
(12345.6789).toFixed(2) // "12345.68"

28.3.7 Number.prototype.toPrecision

인수둜 전달받은 전체 μžλ¦Ώμˆ˜κΉŒμ§€ μœ νš¨ν•˜λ„λ‘ λ‚˜λ¨Έμ§€ 자릿수λ₯Ό λ°˜μ˜¬λ¦Όν•˜μ—¬ λ¬Έμžμ—΄λ‘œ λ°˜ν™˜.

전체 자릿수둜 ν‘œν˜„ν•  수 μ—†λŠ” 경우 μ§€μˆ˜ ν‘œκΈ°λ²•μœΌλ‘œ κ²°κ³Ό λ°˜ν™˜

(12345.6789).toPrecision() // "12345.6789"
(12345.6789).toPrecision(1) // "1e+4"
(12345.6789).toPrecision(2) // "1.2e+4"
(12345.6789).toPrecision(6) // "12345.7"

28.3.8 Number.prototype.toString

숫자λ₯Ό λ¬Έμžμ—΄λ‘œ λ³€ν™˜ν•˜μ—¬ λ°˜ν™˜ν•œλ‹€. 진법을 λ‚˜νƒ€λ‚΄λŠ” 2~36μ‚¬μ΄μ˜ μ •μˆ˜κ°’μ„ 인수둜 전달할 수 μžˆλ‹€.

(10).toString() // "10"
(16).toString(2) // "10000"
(16).toString(8) // "20"
(16).toString(16) // "10"

Last updated

Was this helpful?