Skip to content

Latest commit

ย 

History

History
35 lines (29 loc) ยท 1.55 KB

22_02_22_Tue.md

File metadata and controls

35 lines (29 loc) ยท 1.55 KB

[22.02.22.Tue] - Day 15

Vanilla JS (๋งˆ์ง€๋ง‰ ์‹œ๊ฐ„)

  • ์ด๋ฒคํŠธ ๋ฒ„๋ธ”๋ง
    • ์ž์‹ ๊ฐ์ฒด ์ด๋ฒคํŠธ ๋ฐœ์ƒ ํ›„ ๋ถ€๋ชจ ๊ฐ์ฒด๋„ ์ด๋ฒคํŠธ ๋ฐœ์ƒ (์ด๋ฒคํŠธ ์ค‘๋ณต ๋ฐœ์ƒ ๊ฐ€๋Šฅ)
    • ์ƒ์œ„ ์ด๋ฒคํŠธ ์‹คํ–‰ ๋ง‰๊ธฐ ์œ„ํ•ด์„œ event.stopPropagation() ์ด์šฉ (์ด๋ฒคํŠธ ๋ฒ„๋ธ”๋ง ๋ง‰๊ธฐ)
  • ํ‚ค๋ณด๋“œ ์ด๋ฒคํŠธ
    • keydown - keypress - keyup ์ˆœ์„œ๋กœ ์ด๋ฒคํŠธ ๋ฐœ์ƒ
    • keyup ์ด๋ฒคํŠธ ๋ฐœ์ƒ ํ›„์— input์˜ value ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Œ
  • form
    • submit์€ ๋น„๋™๊ธฐ ๋ฐฉ์‹์ด ์•„๋‹ˆ๋ผ ํŽ˜์ด์ง€ ์ „์ฒด๊ฐ€ ์„œ๋ฒ„๋กœ ๋„˜์–ด๊ฐ€๋ฒ„๋ฆผ
    • SPA์—์„œ๋Š” required ์†์„ฑ, email valid check ๋“ฑ ๋ชปํ•จ
    • input:textํ•˜๊ณ  input:email ์˜๋ฏธ๊ฐ€ ์—†์–ด์ง
    • ๋”ฐ๋ผ์„œ ๋ชจ๋‘ text๋กœ ๋งŒ๋“ค์–ด์„œ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒฝ์šฐ ๋งŽ์Œ (form-submit ์‚ฌ์šฉ ์•ˆํ•˜๋ฏ€๋กœ)
    • ํ•˜์ง€๋งŒ form์„ ํ™œ์šฉํ•˜๋ฉด์„œ ๋‚ด๋ถ€์ ์œผ๋กœ๋Š” ๋น„๋™๊ธฐ ๋ฐฉ์‹์œผ๋กœ ์„œ๋ฒ„๋กœ ์ „์†ก์‹œํ‚ค๊ณ  ์‹ถ์œผ๋ฉด?
      • form์— onsubmit ์†์„ฑ ๋‹ฌ๊ณ  event.preventDefault() ํ™œ์šฉํ•˜๋ฉด ๋จ
  • ๋ฉ”๋ชจ๋ฆฌ
    • ์ •์ ์ธ ๋ฐ์ดํ„ฐ(๋ฌธ์ž์—ด, ๋ถˆ, ์ˆซ์ž, ...)๋Š” stack ๋ฉ”๋ชจ๋ฆฌ์— ํ• ๋‹น๋จ
    • ๋™์ ์ธ ๋ฐ์ดํ„ฐ(๋ฐฐ์—ด, ๊ฐ์ฒด, ...)๋Š” heap ๋ฉ”๋ชจ๋ฆฌ์— ํ• ๋‹น๋จ
      • ์Šคํƒ์—์„œ๋Š” ์ฐธ์กฐ ์ฃผ์†Œ ํ• ๋‹น
      • ๋ฐฐ์—ด ๋ณต์‚ฌํ•˜๊ณ  ์‹ถ์œผ๋ฉด ์Šคํ”„๋ ˆ๋“œ ์—ฐ์‚ฐ์ž ํ™œ์šฉ
      • Object.assign() ํ•จ์ˆ˜ ์ด์šฉ ๊ฐ€๋Šฅ
      • ๊ณผ๊ฑฐ) JSON.parse(JSON.stringify(arr)) ๋งŽ์ด ์ด์šฉํ–ˆ์—ˆ์Œ
  • ๋ฐ์ดํ„ฐ ๊ทธ๋ฆฌ๋“œ ์ตœ์ข… ์‹ค์Šต
    • ์ปฌ๋Ÿผ๋ช… ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌ
      • custom ์†์„ฑ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Œ

[Note]