โ†ย ๋’ค๋กœ๊ฐ€๊ธฐ

1์žฅ ์ฑ•ํ„ฐ 2. ๊ฐ’

2023/02/09

๊ฐ’

  • JS์˜ ๊ฐ’๋“ค์€ ๋‹ค๋ฅธ ์–ธ์–ด, ํŠนํžˆ C๋‚˜ JAVA์™€ ์ข€ ๋‹ค๋ฅด๊ฒŒ ๋™์ž‘ํ•œ๋‹ค.
  • ๋ฐฐ์—ด, ๋ฌธ์ž์—ด๋“ฑ์—์„œ ๊ทธ ์ฐจ์ด๋ฅผ ์•Œ์•„๋ณธ๋‹ค.

๋ฐฐ์—ด

์˜ˆ์ œ: JS์˜ ๋ฐฐ์—ด์€ ๋‹ค์–‘ํ•œ ํƒ€์ž…์˜ ๊ฐ’์„ ์›์†Œ๋กœ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‹ค.

  • ์‹ฌ์ง€์–ด ์•„๋ž˜์™€ ๊ฐ™์ด ๊ตฌ๋ฉ๋‚œ ๋ฐฐ์—ด์„ ๋งŒ๋“œ๋Š”๊ฒƒ๋„ ๊ฐ€๋Šฅํ•˜๋‹ค

์˜ˆ์ œ: ๊ตฌ๋ฉ๋‚œ ๋ฐฐ์—ด

  • ๋™์ž‘์ด ์ƒ๋‹นํžˆ ํŠน์ดํ•œ๋ฐ, ์ธ๋ฑ์Šค 100 ์œ„์น˜์— ์š”์†Œ๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š”๊ฒƒ๋„ ๊ฐ€๋Šฅํ•œ๋ฐ, ์ด๋•Œ length๋ฅผ ์ฐ์–ด๋ณด๋ฉด 101๋กœ ๋‚˜์˜จ๋‹ค.

์ˆซ์ž ์ธ๋ฑ์Šค ๋Œ€์‹  ๋ฌธ์ž์—ด์„ ์‚ฌ์šฉํ•˜๋Š”๊ฒƒ๋„ ๊ฐ€๋Šฅํ•˜๋‹ค.

  • ์ด๋Š” ๋ฐฐ์—ด ์ž์ฒด๋„ ๊ฐ์ฒด์ด๊ธฐ ๋•Œ๋ฌธ์—, Key/Property ๋ฌธ์ž์—ด์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
  • ๋˜๊ธด ํ•˜์ง€๋งŒ, length๋Š” ์ฆ๊ฐ€ํ•˜์ง€ ์•Š๋Š”๋‹ค.

์˜ˆ์ œ: ์ •์ˆ˜๋ฅผ ๋ฌธ์ž์—ด๋กœ ๊ฐ์‹ผ ๊ฒฝ์šฐ, number ํƒ€์ž…์„ ์‚ฌ์šฉํ•œ ๊ฒƒ์œผ๋กœ ๋™์ž‘ํ•œ๋‹ค.

์œ ์‚ฌ ๋ฐฐ์—ด

  • Array๊ฐ€ Object์˜ ํ•˜์œ„ํƒ€์ž…์ด๊ธด ํ•˜์ง€๋งŒ, ์–ด์จ‹ํŠผ ๋ฐฐ์—ด์€ ๋ฐฐ์—ด์ด๋‹ค.
  • ๊ทผ๋ฐ, JS์—์„  ๋ฐฐ์—ด์ด ์•„๋‹Œ๋ฐ ๋ฐฐ์—ด์ฒ˜๋Ÿผ ์ƒ๊ธด ๊ฐ์ฒด๋ฅผ ์“ฐ๋Š” ๊ฒฝ์šฐ๊ฐ€ ์กด์žฌํ•œ๋‹ค.
    ์ด๋Ÿฌํ•œ ๊ฐ์ฒด๋ฅผ ์œ ์‚ฌ ๋ฐฐ์—ด์ด๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค

์˜ˆ์ œ: ์œ ์‚ฌ ๋ฐฐ์—ด๊ณผ ์ผ๋ฐ˜ ๋ฐฐ์—ด์˜ ์ฐจ์ด์ 

  • ๋ฐฐ์—ด์ฒ˜๋Ÿผ ์ƒ๊ฒผ์„ ๋ฟ, ๋ฐฐ์—ด์€ ์•„๋‹ˆ๊ธฐ์— Array๊ฐ€ ๊ฐ€์ง„ ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•  ์ˆ˜ ์—†๋‹ค.
  • ์œ ์‚ฌ๋ฐฐ์—ด์€ ๊ทธ๋ƒฅ ์ •์ˆ˜๋ฅผ Key๋กœ ๊ฐ€์ง€๋Š” ๊ฐ์ฒด์ผ ๋ฟ, Array๊ฐ€ ์•„๋‹ˆ๋‹ค.
  • ์œ ์‚ฌ๋ฐฐ์—ด์„ Arrayํƒ€์ž…์˜ ๋ฐฐ์—ด๋กœ ๋ฐ”๊พธ๊ณ  ์‹ถ๋‹ค๋ฉด Array.from ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค.

๋ฌธ์ž์—ด

  • ๋‹ค๋ฅธ ์–ธ์–ด์˜ ๊ฒฝ์šฐ ๋ฌธ์ž์—ด์€ ๋ฌธ์ž์˜ ๋ฐฐ์—ด์ธ ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋Š”๋ฐ, ์‹ค์ œ ๊ตฌํ˜„์ด ์–ด๋–ค์ง„ ๋ชจ๋ฅด๋‚˜, ์‚ฌ์šฉํ•จ์— ์žˆ์–ด์„  ๋ฌธ์ž๋ฐฐ์—ด์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค.
  • JS์˜ ๋ฌธ์ž์—ด์€ ๋ฐฐ์—ด์ฒ˜๋Ÿผ indexOf, concat, length๋“ฑ์˜ ํ”„๋กœํผํ‹ฐ๋‚˜ ๋ฉ”์„œ๋“œ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๊ธด ํ•˜์ง€๋งŒ, ๊ทธ๋ ‡๋‹ค๊ณ  ํ•ด์„œ ๋ฐฐ์—ด์€ ์•„๋‹ˆ๋‹ค.

๋ฌธ์ž์—ด์€ ๋ถˆ๋ณ€๊ฐ’์ด๋‹ค

  • ๋ฌธ์ž ๋ฐฐ์—ด์ด๋ผ๋ฉด, ๋ฐฐ์—ด ์›์†Œ๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค.
  • ํ•˜์ง€๋งŒ ๋ฌธ์ž์—ด์€ ๋ถˆ๋ณ€๊ฐ’์ด๊ธฐ์—, ํŠน์ • ์œ„์น˜์˜ ๋ฌธ์ž๋งŒ ๋ฐ”๊พธ๋Š”๊ฒƒ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค. ์ƒˆ ๋ฌธ์ž์—ด์„ ๋งŒ๋“ค์–ด์•ผ ํ•œ๋‹ค.

๋ฌธ์ž์—ด์„ ๋’ค์ง‘์œผ๋ ค๋ฉด?

  • ๋ฐฐ์—ด์˜ ๊ฒฝ์šฐ reverse๋ผ๋Š” ๋ฉ”์„œ๋“œ๊ฐ€ ์žˆ์–ด์„œ, ๋ฌธ์ž ๋ฐฐ์—ด์ด์—ˆ๋‹ค๋ฉด ๊ทธ๋ƒฅ reverse๋งŒ ํ˜ธ์ถœํ•˜๋ฉด ๋˜์ง€๋งŒ, ๋ฌธ์ž์—ด์€ ๊ทธ๋Ÿฐ๊ฒŒ ์—†๋‹ค.
  • ์—ฌ๋Ÿฌ ๊ตฌํ˜„๋ฐฉ๋ฒ•์ด ์กด์žฌํ•  ์ˆ˜ ์žˆ๊ฒ ๋Š”๋ฐ, ๋ฌธ์ž์—ด์„ ๋ฌธ์ž ๋ฐฐ์—ด๋กœ ๋ฐ”๊ฟ”์„œ reverse๋ฅผ ํ˜ธ์ถœํ•˜๊ณ , ๋‹ค์‹œ ๋ฌธ์ž์—ด๋กœ ํ•ฉ์น˜๋Š” ๋ฐฉ๋ฒ•์„ ๊ตฌํ˜„ํ•ด๋ณด์ž

์ˆซ์ž

  • ์ˆซ์ž์˜ ์œ ํ˜•๋ณ„๋กœ ๋‹ค์–‘ํ•œ ํƒ€์ž…(float, int, long, double, ...)์„ ๊ฐ€์ง€๋Š” ๋‹ค๋ฅธ ์–ธ์–ด์™€ ๋‹ฌ๋ฆฌ, JS๋Š” number ํ•˜๋‚˜๋ฟ์ด๋‹ค.
  • ๊ทธ๋ž˜์„œ JS๋Š” ์‹ค์ˆ˜๊ฑด ์ •์ˆ˜๊ฑด ํƒ€์ž…์ด ๊ฐ™๋‹ค.

๋จธ์‹  ์—ก์‹ค๋ก : ์ž‘์€ ์†Œ์ˆ˜๊ฐ’์—์„œ ๋ฐœ์ƒํ•˜๋Š” ์˜ค์ฐจ

  • ์ด์ง„ ๋ถ€๋™ ์†Œ์ˆ˜์ ์œผ๋กœ ๋‚˜ํƒ€๋‚ธ ์†Œ์ˆ˜๋Š” ์›๋ž˜ ์ˆ˜์™€ ์ผ์น˜ํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ, ์ด๋Ÿฌํ•œ ์ˆ˜๋ฅผ ๊ฐ€์ง€๊ณ  ๊ณ„์‚ฐํ•œ ๊ฒฐ๊ณผ ๋˜ํ•œ ์›๋ž˜ ์ˆ˜์™€ ์ผ์น˜ํ•˜์ง€ ์•Š๋Š”๋‹ค.
  • ์ด๋ ‡๊ฒŒ ๋ฐœ์ƒํ•œ ์˜ค์ฐจ๋ฅผ ๋จธ์‹  ์—ก์‹ค๋ก ์ด๋ผ๊ณ  ๋ถ€๋ฅด๋Š”๋ฐ, Number.EPSILON์œผ๋กœ ๋ฏธ๋ฆฌ ์ •์˜๋˜์–ด์žˆ๋‹ค.

ํ‘œํ˜„ ๊ฐ€๋Šฅํ•œ ์ˆ˜์˜ ๋ฒ”์œ„์™€ ์•ˆ์ „ํ•œ ์ •์ˆ˜ ๋ฒ”์œ„

  • ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ฐ”์ดํŠธ ์ˆ˜๊ฐ€ ์ œํ•œ๋œ ์ด์ƒ, ํ‘œํ˜„ ๊ฐ€๋Šฅํ•œ ์ˆ˜์˜ ๋ฒ”์œ„๋„ ์กด์žฌํ•œ๋‹ค.
  • Number.MAX_VALUE๋Š” ๋ถ€๋™ ์†Œ์ˆ˜์  ์ˆซ์ž์˜ ์ตœ๋Œ“๊ฐ’, Number.MIN_VALUE๋Š” ์Œ์ˆ˜๊ฐ€ ์•„๋‹ˆ๋ฉด์„œ 0์— ๊ฐ€๊นŒ์šด ์ˆซ์ž์ด๋‹ค.
  • MAX_VALUE, MIN_VALUE๋“ฑ์€ ํ‘œํ˜„ํ•œ ๊ฐ’์ด ์‹ค์ œ ๊ฐ’๊ณผ ์ •ํ™•ํ•˜๊ฒŒ ์ผ์น˜ํ•œ๋‹ค๊ณ  ๋ณด์žฅํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์—,
    JS๋Š” ์ •์ˆ˜์—์„œ ์•ˆ์ „ํ•˜๊ฒŒ ํ‘œํ˜„ ๊ฐ€๋Šฅํ•œ ์ˆ˜์˜ ๋ฒ”์œ„๋ฅผ ๋”ฐ๋กœ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.

ํŠน์ˆ˜๊ฐ’

undefined

  • ์•„๋ž˜์™€ ๊ฐ™์€ ๊ฒฝ์šฐ, ๋”ฐ๋กœ ํ• ๋‹นํ•˜์ง€ ์•Š์•„๋„ ๋ฐ˜ํ™˜๋˜๋Š” ๊ฐ’์ด๋‹ค
    • ๊ฐ’์„ ํ• ๋‹นํ•˜์ง€ ์•Š์€ ๋ณ€์ˆ˜์— ์ ‘๊ทผํ•˜๋Š” ๊ฒฝ์šฐ
    • ์กด์žฌํ•˜์ง€ ์•Š๋Š” ์†์„ฑ์— ์ ‘๊ทผํ•˜๋Š” ๊ฒฝ์šฐ
    • ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜์ง€ ์•Š์€ ํ•จ์ˆ˜์˜ ๋ฆฌํ„ด๊ฐ’์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ

void

  • JS์˜ ๋‚ด์žฅ ์‹๋ณ„์ž๋กœ, ํ‘œํ˜„์‹์˜ ๊ฐ’์„ undefined๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.

ํŠน์ˆ˜ ์ˆซ์ž

NaN

NaN์ด๋ž€
  • Not a number์˜ ์•ฝ์ž๋กœ, ์ˆซ์ž๊ฐ€ ์•„๋‹˜์„ ๋‚˜ํƒ€๋‚ด๋Š” ๊ฒฝ๊ณ„๊ฐ’(Sentinel Value)์˜ ์ผ์ข…์œผ๋กœ, ์ˆซ์ž ์ง‘ํ•ฉ ๋‚ด์—์„œ ๋ฐœ์ƒํ•œ ํŠน๋ณ„ํ•œ ์ข…๋ฅ˜์˜ ์—๋Ÿฌ์ƒํ™ฉ์„ ๋‚˜ํƒ€๋‚ธ๋‹ค.
  • ๊ทผ๋ฐ typeof์˜ ๊ฒฐ๊ณผ๊ฐ’์€ number์ด๋‹ค.
  • ๊ฑฐ๊ธฐ๋‹ค๊ฐ€ ๊ฐ’ ๋น„๊ต๋„ ์•ˆ๋œ๋‹ค.
isNaN()
  • ๋‚ด์žฅ์œ ํ‹ธ์˜ isNaN์ด๋‚˜ ES6์˜ Number.isNaN()์œผ๋กœ NaN ์—ฌ๋ถ€๋ฅผ ํ‰๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค๋งŒ,
    ๋‚ด์žฅ์œ ํ‹ธ์˜ isNaN์€ ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค.
  • 'a'๋Š” ์ˆซ์ž๋Š” ์•„๋‹ˆ์ง€๋งŒ, NaN์ด๋ž€ ๊ฐ’์€ ๋˜ ์•„๋‹ˆ๋‹ค. ๊ทผ๋ฐ isNaN์€ ์ˆซ์ž๊ฐ€ ์•„๋‹ˆ๋ž€ ์ด์œ ๋กœ, 'a'์— ๋Œ€ํ•œ ๋ฆฌํ„ด๊ฐ’์ด true์ด๋‹ค.
  • ๋ฐ˜๋ฉด Number.isNaN์€ ์ •์ƒ์ ์œผ๋กœ false๊ฐ€ ๋ฐ˜ํ™˜๋œ๋‹ค. ๊ทธ๋ž˜์„œ isNaN์œ ํ‹ธํ•จ์ˆ˜๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”ํŽธ์ด ์ข‹๋‹ค.

๋ฌดํ•œ๋Œ€

  • JS์—์„  0์œผ๋กœ ๋‚˜๋ˆˆ ๊ฒฐ๊ณผ๊ฐ€ ๋ฌดํ•œ๋Œ€๋กœ ์ถœ๋ ฅ๋œ๋‹ค

๋ ˆํผ๋Ÿฐ์Šค

  • JS์—๋Š” C++์˜ ์ฐธ์กฐ๋ณ€์ˆ˜(Reference variable)๊ฐ€ ์—†๋‹ค.

ํ”„๋ฆฌ๋ฏธํ‹ฐ๋ธŒ ํƒ€์ž…๊ณผ ๊ฐ์ฒด ํƒ€์ž…

ํ”„๋ฆฌ๋ฏธํ‹ฐ๋ธŒ ํƒ€์ž…์€ ๊ฐ’์ด ๋ณต์‚ฌ๋œ๋‹ค.

  • ํ”„๋ฆฌ๋ฏธํ‹ฐ๋ธŒ ํƒ€์ž…์˜ ๊ฒฝ์šฐ ๊ฐ’์ด ๋ณต์‚ฌ๋˜๋ฏ€๋กœ, ์„œ๋กœ ๋‹ค๋ฅธ ๋ณ€์ˆ˜์— ๊ฐ™์€ ๋ณ€์ˆ˜์˜ ๊ฐ’์„ ํ• ๋‹นํ•˜๋”๋ผ๋„ ๊ฐ’์ด ๋ณต์‚ฌ๋œ๋‹ค.
    ๊ฐ’๋งŒ ๋ณต์‚ฌ๋œ๊ฑฐ๋‹ˆ๊นŒ ํ•œ ๋ณ€์ˆ˜์˜ ๊ฐ’์„ ๋ฐ”๊พธ๋”๋ผ๋„ ๋‹ค๋ฅธ ๋ณ€์ˆ˜๋Š” ๊ทธ๋Œ€๋กœ์ด๋‹ค

๊ฐ์ฒด์˜ ๊ฒฝ์šฐ ๋ ˆํผ๋Ÿฐ์Šค ๊ฐ’์ด ๋ณต์‚ฌ๋œ๋‹ค

  • ๋‹ค๋ฅธ ๋ณ€์ˆ˜์— ๊ฐ์ฒด์˜ ๋ ˆํผ๋Ÿฐ์Šค ๊ฐ’์„ ๋ณต์‚ฌํ•œ ๊ฒฝ์šฐ, ์ด๋ฅผ ์ฐธ์กฐํ•˜๊ฒŒ ๋˜๋ฉด ๊ฐ™์€ ๊ฐ์ฒด์— ์ ‘๊ทผํ•˜๊ฒŒ ๋œ๋‹ค.

์–•์€ ๋ณต์‚ฌ

  • ๋ ˆํผ๋Ÿฐ์Šค ๊ฐ’์„ ๋ณต์‚ฌํ•˜์ง€ ๋ง๊ณ , ์ƒˆ๋กœ์šด ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•ด์„œ ๊ฐ’์„ ๋‹ค์‹œ ์ฑ„์›Œ๋„ฃ์–ด์•ผ ํ•œ๋‹ค.
  • ๊ฐ์ฒด ์•ˆ์˜ ์†์„ฑ์„ ๊ทธ๋Œ€๋กœ ๋ณต์‚ฌํ•˜๋Š”๊ฑธ ์–•์€ ๋ณต์‚ฌ๋ผ๊ณ  ํ•œ๋‹ค. ์ด๋•Œ, ์†์„ฑ์˜ ๊ฐ’์ด ๊ฐ์ฒด๋ผ๋ฉด, ์ด ๊ฐ์ฒด์˜ ๋ ˆํผ๋Ÿฐ์Šค๊ฐ’์„ ๋ณต์‚ฌํ•ด๊ฐ€๋Š” ๊ผด์ด ๋˜๋ฏ€๋กœ,
    ํ•ด๋‹น ์†์„ฑ์€ ๊ฐ™์€ ๊ฐ์ฒด๋ฅผ ์ฐธ์กฐํ•˜๊ฒŒ ๋œ๋‹ค

๊นŠ์€ ๋ณต์‚ฌ

  • ์†์„ฑ์ด ๊ฐ€๋ฆฌํ‚ค๋Š” ๊ฐ์ฒด๋„ ์ „๋ถ€ ์ƒˆ๋กœ ๋งŒ๋“ค๊ณ  ์‹ถ๋‹ค๋ฉด, ์žฌ๊ท€์ ์œผ๋กœ ์ƒˆ๋กœ์šด ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ๊ฐ’์„ ์ฑ„์›Œ๋„ฃ์–ด์•ผ ํ•œ๋‹ค. ์ด๋ฅผ ๊นŠ์€ ๋ณต์‚ฌ๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค.

Wrapper ๊ฐ์ฒด

  • Number๋“ฑ์˜ ๊ฐ์ฒด๋กœ ํ”„๋ฆฌ๋ฏธํ‹ฐ๋ธŒ ํƒ€์ž…์˜ ๊ฐ’์„ ๊ฐ์Œ€ ์ˆ˜๋Š” ์žˆ๋‹ค.
  • ํ•˜์ง€๋งŒ ๊ฐ์ฒด์˜ ์ˆซ์ž ๊ฐ’ ์†์„ฑ์„ ๋ณ€๊ฒฝํ•  ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•˜์ง€ ์•Š์•„, ํ•จ์ˆ˜์—์„œ ๊ฐ’์„ ๋ณ€๊ฒฝํ•ด์ค„ ์ˆ˜ ์—†๋‹ค.

์ •๋ฆฌ

๋ฐฐ์—ด๊ณผ ์œ ์‚ฌ๋ฐฐ์—ด

  • ๋ฐฐ์—ด๋„ ๊ฐ์ฒด๋ผ์„œ ๋ฌธ์ž์—ด์„ ํ‚ค๊ฐ’์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ธด ํ•˜๋‹ค. ๋‹ค๋งŒ ์ด ๊ฒฝ์šฐ length๊ฐ’์ด ์ฆ๊ฐ€ํ•˜์ง€ ์•Š๋Š”๋‹ค.
  • ์œ ์‚ฌ๋ฐฐ์—ด์€ ๋ฐฐ์—ด์ฒ˜๋Ÿผ ์ •์ˆ˜๋ฅผ ํ‚ค๋กœ ๊ฐ€์ง€๊ณ  ์žˆ์„ ๋ฟ, Array์˜ ๊ฐ์ฒด๋Š” ์•„๋‹ˆ๋‹ค. Array์˜ ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ๋ชปํ•œ๋‹ค.

๋ฌธ์ž์—ด

  • JS์˜ ๋ฌธ์ž์—ด์€ ๋ฌธ์ž๋ฐฐ์—ด์ด ์•„๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ ๋ฐฐ์—ด์˜ ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค.
  • JS์˜ ๋ฌธ์ž์—ด์€ ๋ถˆ๋ณ€๊ฐ’์ด๋ฏ€๋กœ ํŠน์ • ์œ„์น˜์˜ ๋ฌธ์ž๋งŒ ๋ฐ”๊ฟ€ ์ˆ˜ ์—†๋‹ค. ๋ณ€๊ฒฝํ•˜๊ณ ์ž ํ•œ๋‹ค๋ฉด, ์ƒˆ ๋ฌธ์ž์—ด์„ ๋งŒ๋“ค์–ด์•ผ ํ•œ๋‹ค.

์ˆซ์ž

  • JS๋Š” ํ•˜๋‚˜์˜ ์ˆซ์ž ํƒ€์ž…์ธ number๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ์ด๊ฑธ๋กœ ์ •์ˆ˜๋ถ€ํ„ฐ ์‹ค์ˆ˜๊นŒ์ง€ ํ‘œํ˜„ํ•œ๋‹ค
  • ์ด์ง„ ๋ถ€๋™์†Œ์ˆ˜์ ์œผ๋กœ ๋‚˜ํƒ€๋‚ธ ์†Œ์ˆ˜๋Š” ์›๋ž˜ ์ˆ˜์™€ ๋งค์šฐ ์œ ์‚ฌํ•  ๋ฟ, ์ผ์น˜ํ•˜์ง€ ์•Š๋Š”๋‹ค.
    ๋”ฐ๋ผ์„œ JS์—์„œ ์†Œ์ˆ˜๋ผ๋ฆฌ ์—ฐ์‚ฐ์„ ํ•˜๋ฉด, ์˜ค์ฐจ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š”๋ฐ, ์ด๋ฅผ ๋จธ์‹  ์—ก์‹ค๋ก ์ด๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค.
  • ๋‹ค๋งŒ ์ •์ˆ˜๋Š” ์›๋ž˜ ์ˆ˜์™€ ์ผ์น˜ํ•˜๊ฒŒ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.
    JS์˜ ์ •์ˆ˜ ์ตœ์†Œ, ์ตœ๋Œ€๊ฐ’์€ Number.MAX_SAFE_INTEGER, MIN_SAFE_INTEGER์„ ์‚ฌ์šฉํ•˜๋ฉด ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค.
  • 0์œผ๋กœ ๋‚˜๋ˆˆ ๊ฒฐ๊ณผ๋Š” Infinity์ด๋‹ค.

NaN

  • ์ˆซ์ž๊ฐ€ ์•„๋‹˜์„ ๋‚˜ํƒ€๋‚ด๋Š” ๊ฒฝ๊ณ„๊ฐ’, ์ˆซ์ž์—์„œ ๋ฐœ์ƒํ•œ ํŠน๋ณ„ํ•œ ์ข…๋ฅ˜์˜ ์—๋Ÿฌ์ƒํ™ฉ์„ ๋‚˜ํƒ€๋‚ธ๋‹ค.
  • NaN์€ ์ž๊ธฐ ์ž์‹ ๊ณผ ๋น„๊ตํ•ด๋„ ๋‹ค๋ฅด๋‹ค๊ณ  ๋‚˜์˜ค๋Š” ํŠน์„ฑ์ด ์žˆ๋‹ค.
  • window.isNaN์€ ๋ฌธ์ž์—ด๋„ NaN์œผ๋กœ ์ทจ๊ธ‰ํ•˜๋Š” ๋ฐ˜๋ฉด, Number.isNaN์€ ๊ทธ๋ ‡์ง€ ์•Š๋‹ค.

๊ฐ์ฒด & ๋ ˆํผ๋Ÿฐ์Šค

  • ํ”„๋ฆฌ๋ฏธํ‹ฐ๋ธŒ ํƒ€์ž…์€ ๊ฐ’์ด ๋ณต์‚ฌ๋˜๋Š” ๋ฐ˜๋ฉด, ๊ฐ์ฒด๋Š” ๋ ˆํผ๋Ÿฐ์Šค ๊ฐ’์ด ๋ณต์‚ฌ๋œ๋‹ค. ๊ฐ™์€ ๋ ˆํผ๋Ÿฐ์Šค๊ฐ’์„ ๊ฐ€์ง€๋‹ˆ, ๊ฐ™์€ ๊ฐ์ฒด๋ฅผ ์ฐธ์กฐํ•˜๊ฒŒ ๋œ๋‹ค
  • ๊ฐ์ฒด ๋ณต์‚ฌ๋Š” ๋‘๊ฐ€์ง€ ๋ฐฉ๋ฒ•์ด ์žˆ๋‹ค. ์–•์€ ๋ณต์‚ฌ์™€ ๊นŠ์€ ๋ณต์‚ฌ๊ฐ€ ์žˆ๋Š”๋ฐ, ์–•์€ ๋ณต์‚ฌ๋Š” ์†์„ฑ์„ ๊ทธ๋Œ€๋กœ ๋ณต์‚ฌํ•˜๋‹ค๋ณด๋‹ˆ, ๊ฐ์ฒด์ธ ๊ฒฝ์šฐ ๋ ˆํผ๋Ÿฐ์Šค๋ฅผ ๋ณต์‚ฌํ•œ๋‹ค. ๋ฐ˜๋ฉด ๊นŠ์€ ๋ณต์‚ฌ๋Š” ์†์„ฑ์ด ๊ฐ€์ง„ ๊ฐ์ฒด๋„ ์™„์ „ํžˆ ๋ณต์‚ฌํ•œ๋‹ค. ์ฆ‰ ์ƒˆ๋กœ์šด ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.

Number ๊ฐ์ฒด

  • Number๊ฐ์ฒด๋กœ ํ”„๋ฆฌ๋ฏธํ‹ฐ๋ธŒ ํƒ€์ž…์„ ๊ฐ์‹ธ๋Š” ๊ฒฝ์šฐ, ํƒ€์ž…์€ object์ธ๋ฐ, ์–ธ์ œ ์–ธ๋ฐ•์‹ฑ์ด ๋ฐœ์ƒํ• ์ง€ ๋ชจ๋ฅธ๋‹ค.
  • ๊ฐ์ฒด์ด๊ธด ํ•˜์ง€๋งŒ ๋‚ด๋ถ€์˜ ํ”„๋ฆฌ๋ฏธํ‹ฐ๋ธŒ ๊ฐ’์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†๋‹ค.