Skip to content

javascript_in_depth_15

KyusungDev edited this page Apr 20, 2017 · 2 revisions

๋””์ž์ธ ํŒจํ„ด ์‹ค์šฉ - ์ •๋ฆฌ

  • ๋ชจ๋“ˆ ํŒจํ„ด
    ๊ธ€๋กœ๋ฒŒ ๋ณ€์ˆ˜๋ฅผ ์ตœ์†Œํ™”ํ•˜๊ณ  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋‚˜ API์˜ ์†Œ์Šค ๊ด€๋ฆฌ์— ์œ ์šฉํ•˜๋‹ค

  • ์ด๋ฒคํŠธ ๋ธ๋ฆฌ๊ฒŒ์ด์…˜ ํŒจํ„ด
    ์—ฌ๋Ÿฌ DOM์— ์ด๋ฒคํŠธ ํ•ธ๋“ค๋Ÿฌ๋ฅผ ๊ฑธ์–ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ์™€ ๋™์ ์ธ DOM์˜ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ๋ฅผ ํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ ์œ ์šฉํ•˜๋‹ค. ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ๋Š” [์บก์ฒ˜๋ง] - [๋Œ€์ƒ] - [๋ฒ„๋ธ”๋ง]์˜ ์„ธ ๋‹จ๊ณ„๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค.

  • ํ”„๋ฝ์‹œ ํŒจํ„ด ์บ์‹œ๋ฅผ ํ™œ์šฉํ•˜๊ฑฐ๋‚˜ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์š”์ฒญ์„ ํ•˜๋‚˜๋กœ ํ•ฉ์ณ์„œ ์„œ๋ฒ„ ์š”์ฒญ์„ ์ตœ์ ํ™” ํ•˜๊ฑฐ๋‚˜ ์™ธ๋ถ€ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ฐ„ํŽธํ•˜๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค. ํ”„๋ฝ์‹œ ํŒจํ„ด๊ณผ ์ด๋ฒคํŠธ ๋ธ๋ฆฌ๊ฒŒ์ด์…˜ ํŒจํ„ด์„ ์กฐํ•ฉํ•˜๋ฉด ํ™•์žฅ์„ฑ ์žˆ๋Š” ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.

  • ๋ฐ์ปค๋ ˆ์ดํ„ฐ ํŒจํ„ด
    ๋ฐ˜๋ณต๋˜๋Š” ๊ธฐ๋Šฅ์˜ ์กฐํ•ฉ์„ ์กฐ๊ธˆ์”ฉ ๋ณ€๊ฒฝํ•ด์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ์œ ์šฉํ•˜๋ฉฐ ๋””๋ฒ„๊น…์„ ์œ„ํ•œ ๋กœ๊น… ํˆด์˜ ์‘์šฉ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

  • Init-time branching ํŒจํ„ด
    ๋ธŒ๋ผ์šฐ์ € ํ˜ธํ™˜์„ฑ์„ ์ง€์›ํ•˜๊ธฐ ์œ„ํ•˜์—ฌ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ํŒจํ„ด์ด๋‹ค. ๋ธŒ๋ผ์šฐ์ € ํ˜ธํ™˜์„ฑ์„ ์ง€์›ํ•˜๋Š” ํ•จ์ˆ˜์—์„œ๋Š” ๋ธŒ๋ผ์šฐ์ € ์ข…๋ฅ˜, ๋ฒ„์ „ ๊ธฐ์ค€์ด ์•„๋‹Œ ๊ธฐ๋Šฅ์˜ ์กด์žฌ ์—ฌ๋ถ€๋กœ ํ˜ธํ™˜์„ฑ ์ง€์›์„ ํŒ๋‹จํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.

  • Self-defining function ํŒจํ„ด
    ์ดˆ๊ธฐํ™” ์ž‘์—…์ด ๋งค๋ฒˆ ํ•„์š”ํ•œ ํ•จ์ˆ˜๋‚˜ ํด๋กœ์ €์— ์ดˆ๊ธฐํ™” ๋‚ด์šฉ์„ ์ €์žฅํ•ด์•ผ ํ•˜๋Š” ํ•จ์ˆ˜์— ํ™œ์šฉํ•˜๋ฉด ์ข‹๋‹ค.

  • ๋ฉ”๋ชจ์ด์ œ์ด์…˜ ํŒจํ„ด
    ์บ์‹œ์™€ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•˜์—ฌ ์„ฑ๋Šฅ๊ณผ ์„œ๋ฒ„ ์š”์ฒญ ์ตœ์ ํ™”์— ์œ ์šฉํ•˜๋‹ค.

  • Self-invoking constructor ํŒจํ„ด
    ํ•จ์ˆ˜ ๊ธฐ๋ฐ˜์˜ ๊ฐ์ฒด์ง€ํ–ฅ์„ ๊ฐœ๋ฐœํ•˜๋Š” ๊ฒฝ์šฐ ๋ฐฉ์–ด์ ์ธ ์ฝ”๋”ฉ์œผ๋กœ ํ™œ์šฉํ•˜๋ฉด ์ข‹๋‹ค.

  • ์ฝœ๋ฐฑ ํŒจํ„ด
    ์ด๋ฒคํŠธ ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘ํ•˜๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ์œ ์šฉํ•˜๋ฉฐ, ๋น„๋™๊ธฐ ์š”์ฒญ์— ๋Œ€ํ•œ ์ˆœ์„œ ๋ณด์žฅ์— ํ™œ์šฉํ•˜๋ฉด ์ข‹๋‹ค.

  • ์ปค๋ง ํŒจํ„ด
    ํ•˜๋‚˜์˜ ๊ณต์šฉํ•จ์ˆ˜๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ์ด๋ฅผ ์„ธ๋ถ€์ ์ธ ๊ธฐ๋Šฅ์„ ํ•˜๋Š” ํ•จ์ˆ˜๋กœ ๋‚˜๋ˆ„๊ณ  ์‹ถ์„ ๋•Œ ์œ ์šฉํ•˜๋‹ค.

Clone this wiki locally