๋ก๊ทธ์ธํ์ธ์ ์ ์ก ๋ซ๊ธฐ Navbar An item A second item A third item A fourth item And a fifth one Shirts on Sale ๋ก๊ทธ์ธ ๋ฒ์ธ ํ๊ทธ์์ ๋ฐ์ํ๋ ์ด๋ฒคํธ๋ค์ด ์์ต๋๋ค. input์ด๋ฒคํธ์ change ์ด๋ฒคํธ์ธ๋ฐ ์์ ๋ญ๊ฐ ์
๋ ฅํ ๋ ๋ฐ์ํฉ๋๋ค. ๋ด์ฉ์ ์
๋ ฅํ ๋๋ ๋ณํ๊ฐ ์๊ธธ๋ ์ธ์ ์๋ ์ด๋ฒคํธ๋ฆฌ์ค๋์
๋๋ค document.getElementById('email').addEventListener('input', function(){ console.log('์๋
') }); document.getElementById('email').addEventListener('change', function(){ console.log('์๋
') });
์ฝ๋ฉ์ ํ
async / await async / await ๋ ํ๋ก๋ฏธ์ค ๋์ ์๊ธดํ๊ฒ ์ธ์ ์๋ค async ๋ฅผ function ์์ ๋ถ์ด๋ฉด ํจ์ ์คํํ์ Promise ์ค๋ธ์ ํธ๊ฐ ๋จ์ต๋๋ค ๊ฐ์ด ์ฐ์ด๋ await๋ ํ๋ก๋ฏธ์ค๊ฐ ์ฑ๊ณตํ ๋๊น์ง ๊ธฐ๋ค๋ ค์ฃผ๋ฉฐ, ํญ์ async ํจ์ ์์์๋ง ์๋๋ค async function ๋ํ๊ธฐ(){ //new Promise()์ด์ฉ๊ตฌ~ ๋์์ธ ์ํด๋ 'async'๋ฅผ ํจ์ ์์ ๋ถ์ด๋ฉด ํจ์๊ฐ ํ๋ก๋ฏธ์ค๊ธฐ๋ฅ return 1+1; } ๋ํ๊ธฐ().then(function(๊ฒฐ๊ณผ){ //.then()์ฌ์ฉ๊ฐ๋ฅ! ์? async ํจ์๊ฐ ์์ผ๋ฉด ํ๋ก๋ฏธ์ค๋ฅผ ๋ฑ์ด๋ด๋๊น console.log(๊ฒฐ๊ณผ) }) // async ๋ ์ฑ๊ณต๋ง ํ์ ๊ฐ๋ฅ //return Promise.reject() ์คํจํ์ ํ๋ฉด, ์๋ฌ๋ฅผ ์ผ์ผํด..
Promise() ํ๋ก๋ฏธ์ค = ์ฑ๊ณต/์คํจ ํ์ ๊ธฐ๊ณ! -3๊ฐ์ง ์ํ- ์ฑ๊ณต์คํจ ํ์ ์ ์ฑ๊ณต ํ์ ์คํจ ํ์ var ํ๋ก๋ฏธ์ค = new Promise(); ํ๋ก๋ฏธ์ค.then(function(){ }).catch(function(){ }); // ์ฝ๋ฐฑํจ์์ ๋ค๋ฅด๊ฒ '์คํจ์ ํน์ ์ฝ๋๋ฅผ ์คํํด์ฃผ์ธ์~' ๊ฐ๋ฅํจ 1. Promise๊ธฐ๊ณ ์์๋ ์๋ฌด๊ฑฐ๋ ๋ค ์ง์ด๋ฃ์ ์ ์์ต๋๋ค var ํ๋ก๋ฏธ์ค = new Promise(function(์ฑ๊ณต,์คํจ){ var ์ด๋ ค์ด์ฐ์ฐ = 1+1; ์ฑ๊ณต(); }); ํ๋ก๋ฏธ์ค.then(function(){ console.log('์ฐ์ฐ์ด ์ฑ๊ณตํ์ต๋๋ค') }).catch(function(){ console.log('์ฐ์ฐ์ด ์คํจํ์ต๋๋ค') }); //์ฐธ๊ณ ๋ก, ์ฐ์ฐ๊ฒฐ๊ณผ๊ฐ์๊ฑธ then์์์ ํ์ฉํ..
Prototype์ด๋? ์๋ฐ์คํฌ๋ฆฝํธ์๋ constructor(๊ฐ์ฒด ์ฐ์ด๋ด๋ ๊ธฐ๊ณ)๋ง๊ณ ๋ ์์์ ํด์ฃผ๋ ์ฅ์น๊ฐ ํ๋ ๋ ์๋ค! ๋ฐ๋ก prototype ์ด๋ค. ๊ธฐ๊ณ๋ฅผ ๋ง๋ค๋ฉด, ์ฐ๋ฆฌ๊ฐ ๋ชจ๋ฅด๊ฒ prototype ์ด๋ผ๋ ๊ฒ ์์ฑ๋๋ค. function ๊ธฐ๊ณ(){ this.name = 'Kim'; this.age = 15; } var ํ์1 = new ๊ธฐ๊ณ(); var ํ์2 = new ๊ธฐ๊ณ(); console.log(๊ธฐ๊ณ.prototype); '๊ธฐ๊ณ.prototype' ์ ๊ธฐ๊ณ์ ๋ถ๋ชจ์ ์ ์์
๋๋ค. ๊ธฐ๊ณ.prototype ์ ๋ณ์๋ ํจ์๊ฐ ๋ค์ด์๋ค๋ฉด ๊ธฐ๊ณ๋ก๋ถํฐ ์์ฑ๋๋ ์ค๋ธ์ ํธ(์์)๋ค์ ๋ชจ๋ ๊ทธ๊ฒ๋ค์ ๋ฌผ๋ ค๋ฐ์ ์ธ ์ ์์ต๋๋ค. function ๊ธฐ๊ณ(){ this.name = 'Kim'; this.age = 15; ..