Skip to content

Latest commit

ย 

History

History
35 lines (26 loc) ยท 1017 Bytes

File metadata and controls

35 lines (26 loc) ยท 1017 Bytes

BigInt ํƒ€์ž…

BigInt ํƒ€์ž…์ด๋ž€?

ES6์—์„œ ์ถ”๊ฐ€๋œ ์›์‹œํ˜• ํƒ€์ž… ์ค‘ ํ•˜๋‚˜๋กœ, ๋ถˆ๋ณ€์„ฑ์„ ์œ ์ง€ํ•˜๊ณ  Number ํƒ€์ž… ์ตœ๋Œ€๊ฐ’๋ณด๋‹ค 2^53 - 1 ํฐ ์ •์ˆ˜๋ฅผ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. (๊ธˆ์œต๋ฐ์ดํ„ฐ๋กœ ์ฃผ๋กœ ์‚ฌ์šฉํ•จ)

BigInt ํŠน์ง•

  • new ํ‚ค์›Œ๋“œ๋ฅผ ํ†ตํ•ด ์ƒ์„ฑ๋˜์ง€ ์•Š๋Š”๋‹ค.
  • typeof ์—ฐ์‚ฐ์ž ๊ฒฐ๊ณผ๊ฐ’์€ bigint
    • typeof BigInt(โ€™1โ€™) === โ€˜bigintโ€™
  • Number์™€ ์ผ์น˜ํ•˜์ง€๋Š” ์•Š์ง€๋งŒ, ๋™๋“ฑํ•˜๋‹ค.
BigInt == Number // true

BigInt === Number //false

์ƒ์„ฑ๋ฒ•

  • ๋ฆฌํ„ฐ๋Ÿด
    • ์ •์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด์˜ ๋’ค์— n์„ ๋ถ™์ธ๋‹ค
    • ์˜ˆ์‹œ: 10n
  • ํ•จ์ˆ˜ํ˜ธ์ถœ
    • BigInt() ํ•จ์ˆ˜ ํ˜ธ์ถœ
    • ์˜ˆ์‹œ: BigInt(10)

์ฃผ์˜์‚ฌํ•ญ

  • Math ๊ฐ์ฒด์˜ ๋ฉ”์„œ๋“œ์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค.
    • Math๊ฐ์ฒด๋Š” Numberํƒ€์ž…๋งŒ ์ง€์›ํ•œ๋‹ค.
  • Number ๊ฐ’๊ณผ ์—ฐ์‚ฐ์—์„œ ํ˜ผ์šฉํ•˜์—ฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค.
    • ๋งŒ์•ฝ, ์—ฐ์‚ฐ์„ ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ํ˜•๋ณ€ํ™˜ ํ•ด์•ผํ•œ๋‹ค.
      ๊ทธ๋Ÿฌ๋‚˜ BigInt๋ฅผ Number๋กœ ํ˜•๋ณ€ํ™˜ํ•˜๋ฉด ์ •ํ™•์„ฑ์„ ์žƒ์„ ์ˆ˜ ์žˆ๋‹ค.