λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°

λ…μ„œ λͺ©λ‘/λͺ¨λ”₯λ‹€ Modern JS Deep Dive

[λͺ¨λ”₯λ‹€] 28μž₯ Number

728x90

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

 

Number λŠ” μƒμ„±μž ν•¨μˆ˜λΌμ„œ new μ—°μ‚°μžμ™€ ν•¨κ»˜ μΈμŠ€ν„΄μŠ€λ₯Ό 생성할 수 μžˆλ‹€.

 

new Number() <-  μ•ˆμ— μˆ«μžκ°€ μ•„λ‹Œ 값을 ν• λ‹Ήν•˜λ©΄ 인수λ₯Ό 숫자둜 κ°•μ œ λ³€ν™˜ν•œλ‹€.

λ³€ν™˜ν•  수 μ—†λ‹€λ©΄ NaN

new μ—°μ‚°μž 없이 Number λ₯Ό ν˜ΈμΆœν•˜λ©΄ μΈμŠ€ν„΄μŠ€κ°€ μ•„λ‹Œ 숫자λ₯Ό λ°˜ν™˜ν•œλ‹€.

 

 

 

 

 

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

 

28.2.1 Number.EPSLION

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

function isEqual (a, b) {
	return Math.abs(a-b) < Number.EPSILON;
    }

차의 μ ˆλŒ€κ°’μ΄ EPSILON 보닀 μž‘μœΌλ©΄ 같은 수둜 μΈμ •ν•˜λŠ” ν•¨μˆ˜. 

 

 

28.2.8 Number.NaN

Number.NaN 은 window.NaN κ³Ό κ°™λ‹€.

 

 

 

 

 

🦊 28.3 Number λ©”μ„œλ“œ

 

28.3.1 Number.isFinite

Number.inFinite λ©”μ„œλ“œμ™€ 빌트인 μ „μ—­ ν•¨μˆ˜ isFinite 의 차이점

 

 

 

28.3.3 Number.isNaN

전달받은 인수λ₯Ό 숫자둜 암묡적 νƒ€μž… λ³€ν™˜ν•˜μ§€ βœ–οΈ

 

28.3.5 Number.prototype.toExponential

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

 

(77.1234).toExponential(); //"7.71234e+1"

μ •μˆ˜λ₯Ό κ·Έλƒ₯ μ“°λ©΄ μ•ˆλ¨. (μ˜λ―Έκ°€ λͺ¨ν˜Έν•˜κΈ° λ•Œλ¬Έ. JS λŠ” 숫자 λ’€μ˜ . λ₯Ό μ†Œμˆ˜μ μœΌλ‘œ ν•΄μ„ν•œλ‹€.

() λ₯Ό ν•¨κ»˜ μ“°λŠ” 것을 μΆ”μ²œν•¨. 

 

 

28.3.5 Number.prototype.toFixed(μ›ν•˜λŠ” μ†Œμˆ˜μ  자릿수)

 

숫자λ₯Ό 반올림 -> λ¬Έμžμ—΄λ‘œ λ°˜ν™˜

 

 

728x90
λ°˜μ‘ν˜•