Language/JS
31
์ฝ๋ฐฑ (Call Back)
1. ์ฝ๋ฐฑ์ด๋? ํ๋์ ์ฝ๋์ ์ธ์๋ก ๋ค์ด๊ฐ๋ ์คํ ๊ฐ๋ฅํ ์ฝ๋๋ฅผ Call back์ด๋ผ ํ๋ค. ์ด๋ค ํจ์์ ์ธ์๋ก ๋ค์ด๊ฐ๋ ์คํ ๊ฐ๋ฅํ ํจ์๋ฅผ Call back ํจ์๋ผ๊ณ ํ๋ค. 2. ์ฝ๋ฐฑ ์์ 3๊ฐ์ง (1) ๊ธฐ๋ณธ์ ์ธ ๊ฒ const a = (callback) => { console.log("A"); callback(); }; const b = () => { console.log("B"); }; a(b); ๋งจ ๋ง์ง๋ง ๋ฌธ์ ๋ณด๋ฉด, a๋ผ๋ ํจ์์ ์ธ์๋ก b ํจ์ ์์ฒด๋ฅผ ๋ฃ์๋ค. ๊ทธ๋ฌ๋ฉด console.log(b) ํ์ ๋ ์ฒ๋ผ b ํจ์ ์์ฒด๊ฐ a์ ์ธ์๋ก ๋ค์ด๊ฐ๋ค. ๊ทธ๋ฆฌ๊ณ 3๋ฒ์งธ ์ค์ ๋ณด๋ฉด callback()์ ์ธ์๋ก ๋ฐ์ b() ํจ์ ์์ฒด๋ฅผ ์คํํ๊ฒ ๋ค๋ ์๋ฏธ์ด๋ค. ๋ฐ๋ผ์ ์ถ๋ ฅ์ด ๋ค์๊ณผ ๊ฐ๋ค. (2) ์์ฉ // ..
2023.04.20
Language/JS
์ฆ์ ์คํ ํจ์ (IIFE)
1. ์ฆ์์คํํจ์ ํจ์๋ ์๋ ์ ์ธ๋ถ (ํน์ ํํ์)๊ณผ ํธ์ถ๋ถ๊ฐ ๋ฐ๋ก ํ์ํ๋ค. ์๋ํ๋ฉด ์ ์ธ๋ถ๋ ํจ์์ ๋ด์ฉ์ ๋ํด ๊ธฐ์ ๋ง ํ์ฌ ๋์ ๊ณณ์ด๊ณ , ํธ์ถ๋ถ๋ ํจ์์ ๋ด์ฉ์ ์ฐ๋ ๊ณณ ์ด๊ธฐ ๋๋ฌธ์ด๋ค. ์ฆ์ ์คํํจ์๋ ํจ์์ ์ ์ธ๊ณผ ํธ์ถ์ ํ๋ฒ์ ํ๋ ํจ์๋ฅผ ๋งํ๋ค. ๋ฐ์ ์ฆ์ ์คํํจ์ ์ฌ์ฉ ํจํด์ ๋ฐฐ์ฐ๊ฒ ์ง๋ง, ๋ํ์ ์ธ ํจํด์ผ๋ก ์ฆ์์คํํจ์์ ๋ชจ์ต์ ์ดํด๋ณด๋ฉด, //(์คํํ ํจ์)(์ธ์); // ์์ ((a) => { console.log(a*2); })(7); ์ด์ ๊ฐ๋ค. ()() ๊ฐ ๋ถ์ด ์๋ ํํ๋ก, ์ฒซ๋ฒ์งธ ()์๋ ์คํํ ํจ์, ๋๋ฒ์งธ ()์๋ ํจ์์ ๋ค์ด๊ฐ ์ธ์๋ฅผ ๊ธฐ์ ํ๋ฉด ๋๋ค. 2. ํจํด // ์ฆ์ ์คํ ํจ์ ํจํด // 1. ํ์ดํ ํจ์ ์ฌ์ฉ ํจํด -> ํ์ดํ ํจ์๋ก ์ฆ์ ์คํ ํจ์๋ฅผ ์ธ ์ ์๋ ํจํด์..
2023.04.20
Language/JS
ํ์ดํ ํจ์
0. ํ์ดํ ํจ์๋ ๋ณ์์ ์ต๋ช
ํจ์๋ฅผ ํ ๋นํ๋ ํ์์ด๋ฏ๋ก ํจ์ ์ ์ธ์ด ์๋๋ผ ํจ์ ํํ์ ์ทจ๊ธ์ ๋ฐ๋๋ค. (ํธ์ด์คํ
๋ถ๊ฐ) 1. ํ์ดํ ํจ์์ ํจํด const a = () => {}; // ๋งค๊ฐ๋ณ์๊ฐ ํ๋์ด๋ฉด ์๊ดํธ ์๋ต ๊ฐ๋ฅ const b = x => {}; const c = (x, y) => {}; // ๋ง์ฝ ํจ์ ๋์๋ถ๋ถ์ ๋ค๋ฅธ ๋ก์ง ์์ด return๋ฌธ๋ง ์๋ค๋ฉด {}์ return ํค์๋ ์๋ต์ด ๊ฐ๋ฅํ๋ค. const d = (x) => {return x * x;}; const e = (x) => x * x; // ๋ง์ฝ ํจ์ ๋์๋ถ๋ถ ๋ด์ return ๋ง๊ณ ๋ค๋ฅธ ๋ก์ง์ด ์๋ค๋ฉด { return} ํํ๋ก ์ ์ด์ค์ผ ํจ. const f = (x) => { console.log(x * x); return x..
2023.04.19
Language/JS
๋งค๊ฐ๋ณ์ ํจํด
0. ๊ธฐ๋ณธํ function sum(a, b) { // ์ฌ๊ธฐ๋ ์ธ์๋ฅผ ๋ฐ๋ ๋งค๊ฐ์ฒด ๋งค๊ฐ๋ณ์ return a + b; } console.log(sum(1, 2)); // ์ฌ๊ธฐ๊ฐ ๋ค์ด์จ ๊ฐ ์ธ์ ์ธ์, ๋งค๊ฐ๋ณ์ ๋ ์ฉ์ด๋ฅผ ํท๊ฐ๋ ธ์๋๋ฐ, ์ธ์๋ ํจ์๊ฐ ํธ์ถ๋์ด ์ค์ ๋ค์ด์ค๋ ๊ฐ์ ๋ปํ๊ณ , ๋งค๊ฐ๋ณ์๋ ํจ์ ์ ์ธ๋ฌธ์ ์ ํ๋ ์ธ์๋ฅผ ๋ฐ๋ ๋งค๊ฐ์ฒด๋ฅผ ๋ปํ๋ค. 1. ๊ธฐ๋ณธ๊ฐ ์์ ํจ์์์ ๋ง์ฝ์ ์ฌ์ฉ์๊ฐ sum ํจ์๋ฅผ ํธ์ถํ๊ณ ์ธ์๋ฅผ ํ๋๋ง ์ด ๊ฒฝ์ฐ ์ด๋ป๊ฒ ๋ ๊น? console.log(sum(7)); // 7๊ณผ undefined๋ฅผ ๋ ํด์ not a number ๋ ๋ฒ์งธ ์ธ์๋ก๋ undefined๊ฐ ๋ค์ด๊ฐ์ 7 + undefined๊ฐ ๋์ด NaN์ด ์ถ๋ ฅ๋ ๊ฒ์ด๋ค. ์ด๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํด์ ๋งค๊ฐ๋ณ์์ ์กฐ์น๋ฅผ ์ทจํ ์ ์๋ค. '..
2023.04.19
Language/JS
ํจ์์ ๋ฐํ๊ณผ ์ข
๋ฃ
1. return (1) ๋ฐํํ๋ ์ญํ return ์์ ์ ํ ๋ด์ฉ์ ๋ฐํ ๊ฐ์ด๋ผ ํ๋ค. ๋ฐํ ๊ฐ์ ํจ์๋ฅผ ํธ์ถํ์ ๋, ํธ์ถ๋ฌธ ์๋ฆฌ์ ๋์ ํด์ ์ ํ ๊ฐ์ด๋ค. function hello() { return "hello~"; } console.log(hello()); // console.log("hello~")์ ๊ฐ์ ๋ง์ด๋ค. ** return ์์ ์๋ฌด๊ฒ๋ ์ ์ ์ด์คฌ์ ์? ** return ๋ค์ ์๋ฌด๊ฒ๋ ์ ์ ์ด์ฃผ๋ฉด undefined๊ฐ ์ถ๋ ฅ๋๋ค. function hello2() { return; } console.log(hello2()); (2) ํจ์๋ฅผ ์ข
๋ฃํ๋ ์ญํ ํจ์ ์ฝ๋๋ฅผ ์์์ ์๋๋ก ์งํํ๋ค๊ฐ return ๋ฌธ์ ๋ง๋๋ฉด ๊ทธ ์๋ฆฌ์์ ํจ์๋ฅผ ์ข
๋ฃํ๊ณ return ๊ฐ ๋ฐํ ๋ค, ํ์ถํ๋ค. ๋ฐ๋ผ์ ..
2023.04.18
Language/JS
ํจ์ ์ ์ธ๋ฌธ๊ณผ ํจ์ ํํ ์์ ์ฐจ์ด ๊ทธ๋ฆฌ๊ณ ํธ์ด์คํ
1. ํจ์ ์ ์ธ๋ฌธ ํจ์ ์ ์ธ Keyword๋ก ์์ํด์ ํจ์๋ฅผ ์ ์ธํ๋ ๋ฌธ์ฅ. //ํจ์ ์ ์ธ๋ฌธ function hello () {} function ํจ์์ด๋ฆ (์ธ์ ๋ฃ๋ ์๋ฆฌ) {๋์ ๋ก์ง} ํํ๋ก ์ ํ๋ค. 2. ํจ์ ํํ์ ๋ณ์์ ์ต๋ช
ํจ์๋ ๊ธฐ๋ช
ํจ์๋ฅผ ๋์
ํ๋ ํํ์ ํํ์์ด๋ค. // ํํ์ 1. ๊ธฐ๋ช
ํจ์๋ฅผ ๋ณ์์ ๋์
const world = function hello () {} // ํํ์ 2. ์ต๋ช
ํจ์๋ฅผ ๋ณ์์ ๋์
const world2 = function () {} const world3 = () => {} ํํ์ 1์ธ ๊ธฐ๋ช
ํจ์๋ฅผ ๋ณ์์ ๋์
ํ ์ ์๋ ํจ์์ ์ด๋ฆ์ผ๋ก ๋ ์ด์ ํธ์ถํ์ฌ ์ฐ์ง ๋ชปํ๋ค. ๋ฌด์กฐ๊ฑด ๋์
ํ ๋ณ์ ์ด๋ฆ์ผ๋ก๋ง ํธ์ถํ์ฌ ์ธ ์ ์๋ค. hello(); // error -> ์ฅ..
2023.04.18
Language/JS
HTML์์ JavaScript ์ฐ๊ธฐ
1. HTML ๋ด๋ถ์ JavaScript๋ฅผ ์ฐ๋ ๊ฒ (CSS ์ธ๋ผ์ธ ํ์๊ณผ ์ ์ฌ) html ๋ด์์ script๋ ํ๊ทธ๋ฅผ ์ฐ๋ฉด ๊ทธ ํ๊ทธ ์ ์ชฝ์ ์๋ฐ ์คํฌ๋ฆฝํธ ์ฝ๋๋ฅผ ์ธ ์ ์๋ค. 2. ์ธ๋ถ ํ์ผ๋ก๋ถํฐ JavaScript ์ฝ๋ ๊ฐ์ ธ์ค๊ธฐ ์ฌ์ด์ ์ธ๋ถ ํ์ผ์ JS ์ฝ๋ ์ ์ฒด๊ฐ ๋ค์ด๊ฐ๋ ๊ฒ๊ณผ ๋์ผํ๋ค. ๋ง์ฝ ์ด๋ ๊ฒ ์ด๋ค๋ฉด? ํด๋น ๊ฒฝ์ฐ, ์ฌ์ด์ ์ฐ์ธ ์ฝ๋ ๋ด์ฉ์ ๋ฌด์๋๋ค. ์๋ํ๋ฉด scr์ ์ ํ ๋ด์ฉ์ด ์์ผ๋ก ๋ค์ด๊ฐ๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ด๋ค.
2023.04.17
Language/JS
While, do while
1. while break ํ ์ ์๊ฒ ๋ง๋ค์ด์ฃผ์ง ์์ผ๋ฉด ๋ฌดํ ๋ฃจํ๊ฐ ๋ ์ ์๋ค. ๋ฐ๋ผ์ ( ) ์์ด๋ { } ์์ด๋ ์ฆ๊ฐ๊ณผ ์กฐ๊ฑด๋ฌธ์ ๋ฌ์์ค์ผ ํ๋ค. 2. do while while ์กฐ๊ฑด์ ์ฒ์ ๋ถํฐ ์ ๋ง์์ ๋ช
๋ น ์คํ ๋ถ๊ฐ ์์ ์คํ์ด ์๋ ์ ์๋ค. ์ด๊ฒ์ ๋ง๊ณ ์ ์ฐ๋ do while ๋ฌธ์ ์ฒ์ ํ๋ฒ์ ๋ฌธ์ฅ์ด ์คํ๋๋๋ก ํด์ค๋ค. do {} while ()์ ๋จผ์ ๋ช
๋ น์ด ๋ถ๋ถ์ ํ ๋ฒ ์คํํ๊ณ , ๋ฃจํ์ ์ง์
ํ๋ค. 0์ ๋ํ์ ์ธ falsey ๊ฐ์ด๋ผ ์ฐธ์ด ์๋๋ค. ์ด ๋ฌธ์ฅ์ ๋งจ ์ฒ์ ํ๋ฒ์ ์คํํ๊ณ ์ถ๋ค๋ฉด, ์ด๋ ๊ฒ ํ๋ฉด ๋ฌธ์ฅ์ ํ ๋ฒ ์คํํ๊ณ ๋ฃจํ์ ์ง์
ํ๋ค.
2023.04.14
Language/JS