๐Ÿ“š Study/JS, JQuery

    ๋™๊ธฐ๋ฐฉ์‹ vs ๋น„๋™๊ธฐ๋ฐฉ์‹, ์ฝœ๋ฐฑํ•จ์ˆ˜์™€ Promise ๊นŒ์ง€ ํ•œ๋ฒˆ์— ํ›‘์–ด๋ณด๊ธฐ!

    ๋™๊ธฐ๋ฐฉ์‹ vs ๋น„๋™๊ธฐ๋ฐฉ์‹, ์ฝœ๋ฐฑํ•จ์ˆ˜์™€ Promise ๊นŒ์ง€ ํ•œ๋ฒˆ์— ํ›‘์–ด๋ณด๊ธฐ!

    ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ๋ชจ๋ธ์˜ ๋ฐฉ์‹ :: ๋™๊ธฐ๋ฐฉ์‹ vs ๋น„๋™๊ธฐ๋ฐฉ์‹ ๋™๊ธฐ๋ฐฉ์‹ ์ˆœ์ฐจ์ ์œผ๋กœ ๋™์ž‘ํ•˜๋Š” ๋ฐฉ์‹ ์š”์ฒญ์„ ๋ณด๋‚ธ ํ›„ ํ•ด๋‹น ์‘๋‹ต์„ ๋ฐ›์•„์•ผ ๋‹ค์Œ ๋™์ž‘์„ ์‹คํ–‰ํ•˜๋ฉฐ ์ด ๋™์ž‘์ด ๋๋‚ ๋•Œ๊นŒ์ง€ ๋‹ค์Œ ๋™์ž‘์€ ๋Œ€๊ธฐ์ƒํƒœ์ด๋‹ค. ์œ„ ๊ทธ๋Ÿผ a์ฒ˜๋Ÿผ ์นดํŽ˜์—์„œ ์ค„์„ ์„œ์„œ ์ปคํ”ผ๋ฅผ ๋ฐ›๋Š” ๋ฐฉ์‹์œผ๋กœ ๋น„์œ ํ•˜๋Š”๋ฐ, ํ•œ ๋™์ž‘์ด ๋๋‚ ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์— ๋™์ž‘์ด ๋Š๋ฆฌ๋‹ค๋Š” ๋Š๋‚Œ์„ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค. ์ด๊ฒƒ์€ ์‹ค์ œ CPU๊ฐ€ ๋Š๋ ค์ง€๋Š” ๊ฒƒ์€ ์•„๋‹ˆ์ง€๋งŒ ์‹œ์Šคํ…œ ์ „์ฒด์ ์ธ ํšจ์œจ์ด ์ €ํ•˜๋œ๋‹ค๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ์„ค๊ณ„๊ฐ€ ๊ฐ„๋‹จํ•˜๊ณ  ์ง๊ด€์ ์ด๋ผ๋Š” ์žฅ์ ์„ ๊ฐ€์ง€์ง€๋งŒ, ๊ฒฐ๊ณผ๋ฅผ ๋ณผ ๋•Œ๊นŒ์ง€ ์•„๋ฌด๊ฒƒ๋„ ๋ชปํ•˜๊ณ  ๋Œ€๊ธฐํ•ด์•ผ ํ•œ๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ๋‹ค! function func1(){ console.log("1๋ฒˆ์ž…๋‹ˆ๋‹ค"); func2(); } function func2(){ console.log("2๋ฒˆ์ž…๋‹ˆ๋‹ค"); fu..

    [JavaScript] ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ DOM (Document Obejct Model) ๊ฐ€๋ณ๊ฒŒ ์ดํ•ดํ•˜๊ธฐ - 2

    ๋ฌธ์„œ ๊ฐ์ฒด ๋ชจ๋ธ(The Document Object Model)์€ ์›นํŽ˜์ด์ง€๋ฅผ ์ž์œ ๋กญ๊ฒŒ ๋‹ค๋ฃจ๊ธฐ ์œ„ํ•ด ์›นํŽ˜์ด์ง€๋ฅผ ๊ฐ์ฒดํšŒ ํ•œ ๊ฐœ๋…์ด๊ณ , ์›น ํŽ˜์ด์ง€๋ฅผ ๊ฐ์ฒดํ™”ํ•œ ๊ฐ ์š”์†Œ์š”์†Œ๋“ค์„ Node๋ผ๊ณ  ๋ถ€๋ฅด๊ณ , ๋…ธ๋“œ๋“ค ์ค‘์—์„œ ๊ฐ€์žฅ ์ƒ์œ„ ๋…ธ๋“œ๊ฐ€ document ๊ฐ์ฒด์˜€๋‹ค. ๊ทธ๋ž˜์„œ document ๊ฐ์ฒด์˜ ๋ฉ”์†Œ๋“œ๋ฅผ ํ™œ์šฉํ•˜๋ฉด ์›นํŽ˜์ด์ง€์˜ ์ƒํƒœ๋‚˜, ํ˜น์€ ์›นํŽ˜์ด์ง€ ๋‚ด์˜ ๋‹ค์–‘ํ•œ ๋…ธ๋“œ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์—ˆ๋Š”๋ฐ ์ด๋ฒˆ ํฌ์ŠคํŠธ์—์„œ๋Š” ์‹ค์ œ๋กœ ์›น ํŽ˜์ด์ง€์˜ HTML์„ ์ž์œ ๋กญ๊ฒŒ ๋‹ค๋ฃจ๋Š” ๋ฉ”์„œ๋“œ์™€ ํ”„๋กœํผํ‹ฐ์— ๋Œ€ํ•ด์„œ ์ข€ ๋” ์ •๋ฆฌํ•ด๋ณด๊ณ ์ž ํ•œ๋‹ค. ๋…ธ๋“œ ์ƒ์„ฑํ•˜๊ธฐ 1. Html tag ๋…ธ๋“œ ์ƒ์„ฑํ•˜๊ธฐ (createElement ๋ฉ”์„œ๋“œ) // document.createElement(tagName); const divElement = document.createElement..

    [JavaScript] ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ DOM (Document Obejct Model) ๊ฐ€๋ณ๊ฒŒ ์ดํ•ดํ•˜๊ธฐ - 1

    [JavaScript] ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ DOM (Document Obejct Model) ๊ฐ€๋ณ๊ฒŒ ์ดํ•ดํ•˜๊ธฐ - 1

    ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ ์›น ํŽ˜์ด์ง€ ์ข€ ๋” ์ž์œ ๋กญ๊ฒŒ ๋‹ค๋ฃจ๋ ค๋ฉด DOM์— ๋Œ€ํ•œ ์ดํ•ด๊ฐ€ ํ•„์š”ํ•˜๋‹ค. ๋ฌธ์„œ ๊ฐ์ฒด ๋ชจ๋ธ (DOM) ๋ฌธ์„œ ๊ฐ์ฒด ๋ชจ๋ธ(Document Object Model, DOM)์€ ๋ง ๊ทธ๋Œ€๋กœ ์›น ํŽ˜์ด์ง€ ๋‚ด์˜ ๋ชจ๋“  ์ฝ˜ํ…์ธ ๋ฅผ ๊ฐ์ฒด๋กœ ๋‚˜ํƒ€๋‚ด ์ฃผ๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๋ž˜์„œ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ƒ๊ฐํ•˜๋ฉด ์›น ํŽ˜์ด์ง€๋ฅผ document๋ผ๊ณ  ๋ถ€๋ฅด๊ณ , document๋ฅผ ์ž์œ ๋กญ๊ฒŒ ๋‹ค๋ฃจ๊ธฐ ์œ„ํ•ด์„œ ๊ฐ์ฒดํ™” ํ•˜๊ณ ์ž ๊ตฌํ˜„๋œ ๊ฐœ๋…์ด ๊ฒฐ๊ตญ์ด DOM์ด๋ผ๊ณ  ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ๊ฒ ๋‹ค. ๊ทธ๋ฆฌ๊ณ  HTML ํƒœ๊ทธ์™€ ๊ธ€์ž, ์†์„ฑ ๋“ฑ document์˜ ๋‹ด๊ฒจ์žˆ๋Š” ๋ชจ๋“  ์š”์†Œ๋“ค์„ ํ•˜๋‚˜ํ•˜๋‚˜๋ฅผ ๊ฐ์ฒดํ™” ํ•œ ๋‹จ์œ„๋ฅผ ๊ฐ€๋ฆฌ์ผœ ๋…ธ๋“œ(Node)๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค. ์•„๋ฌดํŠผ, ๊ฒฐ๊ตญ DOM์€ ์›น ํŽ˜์ด์ง€๋ฅผ ๊ฐ์ฒดํ™” ํ•œ ๊ฐœ๋…์ด๊ณ , ์ด ์›นํŽ˜์ด์ง€์˜ ๊ฐ€์žฅ ์ƒ๋‹จ ์ง„์ž…์ ์ด ๋ฐ”๋กœ document ๊ฐ์ฒด์ด๋‹ค. document ๊ฐ์ฒด๋Š”..

    [๋‹ˆ์ฝ”]# 8 WEATHER

    [๋‹ˆ์ฝ”]# 8 WEATHER

    8.0 Geolocation navigator.geolocation.getCurrentPosition() ์ด๊ฑธ ๋ถ€๋ฅด๋ฉด ๋ธŒ๋ผ์šฐ์ €์—์„œ ์œ„์น˜ ์ขŒํ‘œ๋ฅผ ์ค„๊ฑฐ๋‹ค. WIFI, ์œ„์น˜, GPS JavaScript๊ฐ€ ๋”๋งŽ์€ ์ •๋ณด๋“ค์„ ์ค„๊ฑฐ๋‹ค JS๊ฐ€ user์˜ ์œ„์น˜๋ฅผ ์ „๋‹ฌํ•ด ์ค„๊ฑฐ๋‹ค. ์ฝ”๋“œ 10์ค„๋กœ user์˜ ์œ„์น˜๋ฅผ ์•Œ ์ˆ˜ ์žˆ์Œ 8.1 Weather API ๊ธฐ๋ณธ์ ์œผ๋กœ API๋Š” ๋‹ค๋ฅธ ์„œ๋ฒ„์™€ ์ด์•ผ๊ธฐํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. ์ด URL์—์„œ ์ •๋ณด๋ฅผ ์‘๋‹ตํ•  ๊ฑฐ๋‹ค. URL์—์„œ ๊ฐ€์ ธ์˜ค๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„ ๋ณผ๊ฑฐ๋‹ค. fetch๋ฅผ ์‚ฌ์šฉํ•ด์„œ URL์„ ์–ป์„ ๊ฑฐ๋‹ค. ์‹ค์ œ๋กœ URL์— ๊ฐˆ ํ•„์š” ์—†์ด JavaScript๊ฐ€ ๋Œ€์‹  URL ์„ ๋ถ€๋ฅผ ๊ฑฐ๋‹ค. weather ์ „์ฒด ์ฝ”๋“œ

    [๋‹ˆ์ฝ”] # 7 TO DO LIST

    [๋‹ˆ์ฝ”] # 7 TO DO LIST

    7.0 Set up 7.1 Adding ToDos li.appendChild๋ฅผ ํ•ด์„œ li์•ˆ์— span์„ ๋งŒ๋“ฌ toDoList์— li์š”์†Œ๋ฅผ ์ถ”๊ฐ€ํ•จ greetings ์„น์…˜๊ณผ ๋น„์Šทํ•œ ๊ฑธ ํ•œ๊ฑฐ์ž„ class์— ๋ญ ์ถ”๊ฐ€ํ•˜๋Š” ๊ทธ๋Ÿฐ ๊ธฐ๋Šฅ๋“ค 7.2 Deleting To Dos button์ด click event๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์–ด์•ผ ํ•œ๋‹ค. button์ด ํด๋ฆญ ๋œ๊ฑธ ์ธ์ง€๋Š” ํ•˜๋Š”๋ฐ ์–ด๋–ค li๋ฅผ ์ œ๊ฑฐํ•ด์•ผ ๋˜๋Š” ์ง€๋ฅผ ์•Œ์ง€ ๋ชปํ•œ๋‹ค. mouseํด๋ฆญ ์ขŒํ‘œ๋กœ ํ•˜๊ธฐ์—” ๋„ˆ๋ฌด ๊ธธ๋‹ค path ๋ฅผ ์ด์šฉ li๋ฅผ ์ฐพ๋Š”๋‹ค parentNode, parentElement๋ฅผ tartget์€ ํด๋ฆญ๋œ HTML element ์ด๋‹ค. ๋ชจ๋“  HTML element์—๋Š” ํ•˜๋‚˜ ์ด์ƒ์˜ property๊ฐ€ ์žˆ๋‹ค. parentElement๋Š” ํด๋ฆญ๋œ element์˜ ๋ถ€๋ชจ์ด๋‹ค. ..

    [๋‹ˆ์ฝ”]#6  QUOTES AND BACKGROUND(๋ช…์–ธ ๊ฐ€์ ธ์˜ค๊ธฐ)

    [๋‹ˆ์ฝ”]#6 QUOTES AND BACKGROUND(๋ช…์–ธ ๊ฐ€์ ธ์˜ค๊ธฐ)

    6.0 Quotes ์ž‘๊ฐ€๋Š” ๋ฐ‘์—, ๋ช…์–ธ์€ ์œ„์— Math.floor random ๋ฐ‘์—quote๊ฐ€ ์•„๋‹Œ author์ž„ 6.1 Background createElement ์š”์†Œ๋ฅผ JS ๋กœ HTML์— ์š”์†Œ๋ฅผ ๋งŒ๋“ ๊ฐ€.

    [๋‹ˆ์ฝ”] #5 clock

    [๋‹ˆ์ฝ”] #5 clock

    ์‹œ๊ณ„ ๋งŒ๋“ค๊ธฐ 5.0 Intervals Interval์€ ‘๋งค๋ฒˆ’์ผ์–ด๋‚˜์•ผ ํ•˜๋Š” ๋ฌด์–ธ๊ฐ€๋ฅผ ๋งํ•œ๋‹ค. ํ•˜๊ณ ์‹ถ์€ ๊ฑฐ๋Š” ์ด ํ•จ์ˆ˜๋ฅผ ๋งค 2์ดˆ๋งˆ๋‹ค ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. Javascript๋Š” ์ด๋ฏธ ๊ทธ ๊ฐœ๋…์„ ๋‚ด์žฅํ•˜๊ณ  ์žˆ๋‹ค. ์ด๋Ÿฐ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” tool์ด ๋ฐ”๋กœ setInterval()์ด๋‹ค. setInterval์€ ๋‘ ๊ฐœ์˜ argument๋ฅผ ๋ฐ›๋Š”๋‹ค. ์ฒซ๋ฒˆ์งธ argument๋Š” ๋„ค๊ฐ€ ์‹คํ–‰ํ•˜๊ณ ์ž ํ•˜๋Š” function์ด๋‹ค ๋‘๋ฒˆ์งธ argument๋Š” ํ˜ธ์ถœ๋˜๋Š” function๊ฐ„๊ฒฉ์„ ๋ช‡ ms(mileseconds) ๋กœ ํ• ์ง€ ์“ด๋‹ค. setInterval(syhello, 5000) ๋งค 5000ms ๋งˆ๋‹ค ํ˜ธ์ถœ ์ฆ‰ 5์ดˆ๋งˆ๋‹ค ํ˜ธ์ถœํ•œ๋‹ค. function์„ ๋ช‡์ดˆ๋งˆ๋‹ค ์‹คํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ• (Interval) 5.1 Timeouts and Dates setTim..

    [๋‹ˆ์ฝ”] #4 ๋กœ๊ทธ์ธ

    [๋‹ˆ์ฝ”] #4 ๋กœ๊ทธ์ธ

    4.0 Input Values ๋” ์งง๊ฒŒ ์ฝ”๋”ฉํ•œ๊ฑฐ 3์ค„ →2์ค„ ์ฒซ ๋ฒˆ์งธ๋กœ HTML์—์„œ form์„ ์ฐพ๊ณ  ์žˆ๋‹ค. document.getElementById๋ฅผ ํ†ตํ•ด์„œ JS๊ฐ€ ์ด๊ฑธ ์ฐพ์•˜๋‹ค๋ฉด loginForm์€ HTML ๋‚ด์— ์žˆ๋Š” element๋ผ๋Š” ๋œป์ด๋‹ค. → ์ด element๋ฅผ JS๋กœ ๋Œ๊ณ  ์™”๋‹ค. 4.1 Form Submission HTML์ž์ฒด์ ์œผ๋กœ maxlength์กฐ์ ˆํ•  ์ˆ˜ ์žˆ์–ด์„œ js์—์„œ๋Š” ์•ˆํ•ด๋‘๋œ๋‹ค html์—์„œ ํ• ์ˆ˜ ์žˆ๋Š” ๊ฑฐ๋Š” html๋กœ div๋กœ ๋ฐ›์œผ๋ฉด ์ƒˆ๋กœ ๊ณ ์นจํ•ด๋„ ๋˜‘๊ฐ™์ด ์œ ์ง€๊ฐ€ ๋˜๋‚˜ div ๋Œ€์‹  form์œผ๋กœ ๋ฐ›์œผ๋ฉด ์ž๋™์œผ๋กœ ์ƒˆ๋กœ๊ณ ์นจ ๋˜์–ด ์—†์–ด์ง„๋‹ค form์€ ์ƒˆ๋กœ ๊ณ ์นจ๋˜๋Š” ์ด์œ ๋Š”form์ด submit๋˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์ด ์ˆœ๊ฐ„์— ์šฐ๋ฆฌ๋Š” ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ƒˆ๋กœ๊ณ ์นจํ•˜์ง€ ์•Š๊ณ  user ์ •๋ณด๋ฅผ ์ €์žฅํ•˜๋„๋ก ํ•˜๊ณ  ์‹ถ์€๊ฑฐ๋‹ค..

    [๋‹ˆ์ฝ”] #3 JAVASCRIPT ON THE BROWSER

    [๋‹ˆ์ฝ”] #3 JAVASCRIPT ON THE BROWSER

    javascript๊ฐ€ ์–ด๋–ป๊ฒŒ HTML๊ณผ ์ƒํ˜ธ์ž‘์šฉํ•˜๋Š”์ง€๋ฅผ ๋ฐฐ์šฐ๊ฒŒ ๋œ๋‹ค 3.0 The Document Object HTML์€ ์ ‘์ฐฉ์ œ ๊ฐ™์€๊ฑฐ๋‹ค. JavaScript๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š”, HTML๊ณผ ์ƒํ˜ธ์ž‘์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ ์ฆ‰ HTML์˜ Element๋“ค์„ JavaScript๋ฅผ ํ†ตํ•ด ๋ณ€๊ฒฝํ•˜๊ณ  ์ฝ์„ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. document๋Š” ๋ธŒ๋ผ์šฐ์ €์— ์ด๋ฏธ ์กด์žฌํ•˜๋Š” object์ด๋‹ค. HTML ์ฝ”๋“œ๋ฅผ JavaScript๊ด€์ ์„ ํ†ตํ•ด์„œ ๋ณด๊ณ  ์žˆ๋‹ค. document์˜ object์˜ property๋“ค์„ ์•Œ์•„๋ณด๋Š” ๊ฒƒ๋„ ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค. ์กด๋‚˜ ์‰ฝ๋‹ค JavsScipt๋Š” ์ด๋ฏธ HTML๊ณผ ์ด๋ฏธ ์—ฐ๊ฒฐ๋˜์–ด์žˆ๋‹ค. console.dir(document) -> object์˜ ๋ชจ๋“  property๋“ค์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. JavaScript๋กœ HTML์„ ๋ณ€๊ฒฝํ•œ๋‹ค...

    [๋‹ˆ์ฝ”]#2 WELCOME TO JAVASCRIPT

    [๋‹ˆ์ฝ”]#2 WELCOME TO JAVASCRIPT

    javascript 2.1 ๋‘๊ฐ€์ง€ ๋ฐ์ดํ„ฐ ํƒ€์ž… ๊ฐ’ 2+2 ๋ฌธ์ž์—ด “hi”+”hello” 2.2 ๋ณ€์ˆ˜ ๊ฒŒ์œผ๋ฅด๊ฒŒ ์ฝ”๋”ฉ ํ•˜๊ฒŒ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค console.log(5+2) console.log(a+b) ์ถœ๋ ฅ const a = 5 ; (๋ณ€์ˆ˜ ์„ ์–ธ) ๋ฐ”๋€Œ์ง€์•Š์Œ python ๋ณ€์ˆ˜ ์„ ์–ธ ๋ฐฉ์‹ very_Long js veryLongVariable ์ด๋Ÿฐ์‹ 2.3 const and let ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ๋ณ€์ˆ˜ ์„ ์–ธํ•˜๋Š” ๋ฐฉ์‹์€ ๋‘๊ฐ€์ง€๊ฐ€ ์žˆ๋‹ค. const๋Š” constant(์ƒ์ˆ˜)๋ผ๋Š” ๊ฒƒ์ด๊ณ  constant๋Š” ๊ฐ’์ด ๋ฐ”๋€” ์ˆ˜ ์—†๋‹ค. let์€ ์„ ์–ธํ•˜๊ณ  ๋ฐ‘์—๊ฐ€์„œ ๋‹ค์‹œ ์„ ์–ธํ•˜๋ฉด์„œ ๊ฐ’์ด ๋ฐ”๋€” ์ˆ˜ ์žˆ์Œ ex> let myName = “gigi” (letx)๊ฐ€๋Šฅ myName = “ncicj” ๋ฐ”๋€” ์ˆ˜ ์žˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ con..