๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ“’ JavaScript

[JS Tam9์ƒํ™œ] #7 ๋นŒํŠธ์ธ ๊ฐ์ฒด

by Tamii 2021. 8. 9.
๋ฐ˜์‘ํ˜•

๐Ÿ“’21 ๋นŒํŠธ์ธ ๊ฐ์ฒด

  1. ํ‘œ์ค€ ๋นŒํŠธ์ธ ๊ฐ์ฒด (Funciton,String...)
  2. ํ˜ธ์ŠคํŠธ ๊ฐ์ฒด (DOM,BOM...)
  3. ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ์ฒด(foo...)

ํ‘œ์ค€ ๋นŒํŠธ์ธ ๊ฐ์ฒด

JS๊ฐ€ ๊ธฐ๋ณธ์œผ๋กœ ์ œ๊ณตํ•˜๋Š” ๊ฐ์ฒด
๋ชจ๋‘ ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ ๊ฐ€๋Šฅ
Math, Reflect, JSON ์ œ์™ธ ์ •์ ๋ฉ”์„œ๋“œ & ํ”„๋กœํ† ํƒ€์ž…๋ฉ”์„œ๋“œ ์ œ๊ณต

๋ž˜ํผ๊ฐ์ฒด

๋ฌธ์ž์—ด, ์ˆซ์ž, ๋ถˆ๋ฆฌ์–ธ ๊ฐ’์— ๋Œ€ํ•ด ๊ฐ์ฒด์ฒ˜๋Ÿผ ์ ‘๊ทผํ•˜๋ฉด ์ƒ์„ฑ๋˜๋Š” ์ž„์‹œ ๊ฐ์ฒด

์›์‹œ ๊ฐ’์ด ์žˆ๋Š”๋ฐ ๊ฐ์ฒด๋กœ ์ƒ์†ํ•˜๋Š” ์ด์œ ๋Š”?

์›์‹œ๊ฐ’์— ๊ฐ์ฒด์ฒ˜๋Ÿผ ์ ‘๊ทผํ•˜๋ฉด ์ ‘๊ทผํ•  ๋•Œ๋งˆ๋‹ค ์•”๋ฌต์ ์œผ๋กœ ๋ ˆํผ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๊ฒŒ ๋˜๊ณ  ๊ทธ๊ฒƒ๋“ค์ด ๊ฐ€๋น„ํ‚ค ์ปฌ๋ ‰์…˜์˜ ๋Œ€์ƒ์ด ๋œ๋‹ค.

๋ฌธ์ž์—ด,์ˆซ์ž,๋ถˆ๋ฆฌ์–ธ,์‹ฌ๋ฒŒ์€ ์•”๋ฌต์ ์œผ๋กœ ์ƒ์„ฑ๋˜๋Š” ๋ž˜ํผ๊ฐ์ฒด์— ์˜ํ•ด ๊ฐ์ฒด์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ํ‘œ์ค€ ๋นŒํŠธ์ธ ๊ฐ์ฒด์˜ ํ”„๋กœํ† ํƒ€์ž… ๋ฉ”์„œ๋“œ ๋˜ํ•œ ์ฐธ์กฐํ•  ์ˆ˜ ์žˆ๋‹ค.
(! null, undefined๋Š” ๊ฐ์ฒด์ฒ˜๋Ÿผ ์‚ฌ์šฉ ๋ถˆ๊ฐ€)

์ „์—ญ๊ฐ์ฒด

๋Ÿฐํƒ€์ž„ ์ „ JS์—”์ง„์— ์˜ํ•ด ๊ฐ€์žฅ ๋จผ์ € ์ƒ์„ฑ๋˜๋Š” ๊ฐ์ฒด๋กœ ์–ด๋–ค ๊ฐ์ฒด์—๋„ ์†ํ•˜์ง€ ์•Š๋Š”๋‹ค.
๋ธŒ๋ผ์šฐ์ € : window,
Node.js: global ์ด ์ „์—ญ ๊ฐ์ฒด๋ฅผ ๊ฐ€๋ฆฌํ‚จ๋‹ค.

  • ํ‘œ์ค€๋นŒํŠธ์ธ ๊ฐ์ฒด๋ฅผ ํ”„๋กœํผํ‹ฐ๋กœ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.
  • JS ์‹คํ–‰ ํ™˜๊ฒฝ์— ๋”ฐ๋ผ ์ถ”๊ฐ€์ ์ธ ๋ฉ”์„œ๋“œ์™€ ํ”„๋กœํผํ‹ฐ๋ฅผ ๊ฐ€์ง„๋‹ค
  • ํ‚ค์›Œ๋“œ๋ฅผ ์„ ์–ธํ•˜์ง€ ์•Š์€ ๋ณ€์ˆ˜๋Š” ์•”๋ฌต์ ์œผ๋กœ ์ „์—ญ ๊ฐ์ฒด์˜ ํ”„๋กœํผํ‹ฐ๊ฐ€ ๋œ๋‹ค.

    ๋นŒํŠธ์ธ ์ „์—ญ ํ”„๋กœํผํ‹ฐ

    ์ „์—ญ ๊ฐ์ฒด์˜ ํ”„๋กœํผํ‹ฐ
    Nan : ์ˆซ์ž๊ฐ€ ์•„๋‹Œ ์ˆซ์ž๊ฐ’
    Infinity : ๋ฌดํ•œ๋Œ€
    undefined

    ๋นŒํŠธ์ธ ์ „์—ญ ํ•จ์ˆ˜

    ์ „์—ญ ๊ฐ์ฒด์˜ ๋ฉ”์„œ๋“œ
    eval : ๋ฌธ์ž์—ด๋กœ ๋ฐ›์€ ์ฝ”๋“œ๋‚˜ ํ‘œํ˜„์‹ ์ˆ˜ํ–‰ ( ๋Ÿฐํƒ€์ž„์—์„œ ์Šค์ฝ”ํ”„๋ฅผ ์ˆ˜์ •ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ์šฉ ๊ธˆ์ง€)
    isFinite: ์œ ํ•œ์ˆ˜์ธ์ง€ ๋ฌดํ•œ์ˆ˜์ธ์ง€
    isNan : NaN์ธ์ง€ ๊ฒ€์‚ฌ
    parseFloat : ์ธ์ž ์†Œ์ˆ˜์ ์œผ๋กœ
    parseInt : ์ธ์ž ์ •์ˆ˜๋กœ

์ง์ ‘์ƒ์†๊ณผ ๊ฐ„์ ‘์ƒ์†์˜ ์ฐจ์ด๋Š” ๋ฌด์—‡์ธ๊ฐ€์š”? [โ“์งˆ๋ฌธ]

์ƒ์„ฑ๋˜๋Š” ๊ฐ์ฒด์˜ ํ”„๋กœํ† ํƒ€์ž… ์ง€์ • ์œ ๋ฌด์— ์ฐจ์ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ„์ ‘ ์ƒ์†์€ ์ธ์Šคํ„ด์Šค์˜ ํ”„๋กœํ† ํƒ€์ž…์ด ์ž๋™์œผ๋กœ ์ƒ์„ฑ์ž ํ•จ์ˆ˜ ๋‚ด๋ถ€์Šฌ๋กฏ์ด ๊ฐ€๋ฆฌํ‚ค๋Š” ๊ฐ์ฒด๊ฐ€ ๋˜๋Š”๋ฐ

์ง์ ‘์ƒ์†์€ ๊ฐ์ฒด ์ƒ์„ฑ ์‹œ ํ”„๋กœํ† ํƒ€์ž…์œผ๋กœ ์ง€์ •ํ•  ๊ฐ์ฒด๊นŒ์ง€ ๊ฐ™์ด ์ง€์ •ํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค.

์ •์  ๋ฉ”์„œ๋“œ๋Š” ๋ฌด์—‡์ธ๊ฐ€์š”? [โ“์งˆ๋ฌธ]

static
๋”ฐ๋กœ ์ธ์Šคํ„ด์Šค ์—†์ด ํ˜ธ์ถœ์ด ๊ฐ€๋Šฅํ•œ ๋ฉ”์„œ๋“œ๋ฅผ ๋งํ•ฉ๋‹ˆ๋‹ค.
๋‹จ ์ธ์Šคํ„ด์Šค์— ํ˜ธ์ถœํ•  ์ˆ˜๋Š” ์—†๋Š”๋ฐ ์ด๋Š” ์ด ๋ฉ”์„œ๋“œ๊ฐ€ ํ”„๋กœํ† ํƒ€์ž… ์ฒด์ธ์— ์†ํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

์•”๋ฌต์  ์ „์—ญ์ด ๋ฌด์—‡์ธ๊ฐ€์š”?[โ“์งˆ๋ฌธ]

x =20 // window.x= 20

์„ ์–ธํ•˜์ง€ ์•Š์€ ์‹๋ณ„์ž๊ฐ€ JS์—”์ง„์— ์˜ํ•ด ์ž๋™์ ์œผ๋กœ ์ „์—ญ ๊ฐ์ฒด์˜ ํ”„๋กœํผํ‹ฐ๊ฐ€ ๋˜๋Š” ํ˜„์ƒ์„ ๋งํ•ฉ๋‹ˆ๋‹ค.
๊ทธ ๋•Œ ๊ทธ ๋ณ€์ˆ˜๋Š” ์ „์—ญ๋ณ€์ˆ˜์ฒ˜๋Ÿผ ์‚ฌ์šฉ๋˜์ง€๋งŒ ๋ณ€์ˆ˜๋Š” ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ณ€์ˆ˜ ํ˜ธ์ด์ŠคํŒ…์ด ์ผ์–ด๋‚˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
๊ณ ๋กœ ๊ธฐ์กด์˜ ์ „์—ญ๋ณ€์ˆ˜๋Š” ์‚ญ์ œ๊ฐ€ ๋˜์ง€ ์•Š์ง€๋งŒ ์•”๋ฌต์  ์ „์—ญ์œผ๋กœ ์ƒ์„ฑํ•œ ๊ฐ’์€ ์‚ญ์ œ๊ฐ€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

๋Œ“๊ธ€