๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐ŸŒŒ | WEB DEV115

JS_๋ฌธ๋ฒ• (4)_Scope JS์˜ Scope์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์ž! 3๊ฐ€์ง€ ์ข…๋ฅ˜๊ฐ€ ์žˆ๋Š”๋ฐ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. 1. ์ „์—ญ (Global) scope : ์ฝ”๋“œ ์ „์ฒด ๋ฒ”์œ„ 2. ํ•จ์ˆ˜ (Function) scope : ํ•จ์ˆ˜ ๋‚ด์—์„œ์˜ ๋ฒ”์œ„ 3. ๋ธ”๋ก (Block) scope : { } ์ค‘๊ด„ํ˜ธ๋กœ ์ด๋ค„์ง„ ๋ธ”๋ก ๋‚ด์—์„œ์˜ ๋ฒ”์œ„ ๋‹ค๋ฅธ ์–ธ์–ด์™€ ๋‹ฌ๋ฆฌ ๋ธ”๋ก scope๊ฐ€ ์žˆ๋‹ค! ์ „์—ญ scope ์™ธ๋ถ€์—์„œ ์„ ์–ธ๋œ ๋ณ€์ˆ˜orํ•จ์ˆ˜ ๋ชจ๋“  ์ฝ”๋“œ์—์„œ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ์ด๋•Œ ๋ธ”๋ก๊นŒ์ง€๋„ ์ ์šฉ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. let a = 1; { console.log(a) } console.log(a) >>> 1 //๋ธ”๋ก ์•ˆ์—์„œ ์ถœ๋ ฅ 1 //๋ธ”๋ก ๋ฐ–์—์„œ ์ถœ๋ ฅ ์ „์—ญ๋ณ€์ˆ˜๋Š” ๋ธ”๋ก ์•ˆ์˜ ๋ธ”๋ก๊นŒ์ง€๋„ ์ ์šฉ์ด ๋œ๋‹ค. let a = 1; { let b = 2; console.log(a) { console.log(a.. 2022. 2. 17.
JS_๋ฌธ๋ฒ• (3)_ํ˜ธ์ด์ŠคํŒ… ํ˜ธ์ด์ŠคํŒ… ์ด์Šˆ Hoisting = ๋Œ์–ด์˜ฌ๋ฆฐ๋‹ค ์ผ๋ฐ˜์ ์ธ ์–ธ์–ด = ํ•จ์ˆ˜, ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธ ํ›„ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅ JS = ์„ ์–ธ ์ „์— ์‚ฌ์šฉ์„ ํ•ด๋„ ์—๋Ÿฌ๋ฅผ ๋‚ด์ง€ ์•Š๋Š”๋‹ค...! ์˜ˆ์‹œ 1. var ํ‚ค์›Œ๋“œ var์€ let๊ณผ ๊ฐ™์€ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธ์— ์“ฐ์ด๋Š” ํ‚ค์›Œ๋“œ์ด๋‹ค. ํ•˜์ง€๋งŒ ๊ฐ™์€ ์ด๋ฆ„์˜ ๋ณ€์ˆ˜๋ฅผ ์žฌ์„ ์–ธํ•ด๋„ ์˜ค๋ฅ˜๊ฐ€ ๋‚˜์ง€ ์•Š๋Š”๋‹ค. var a = 1; var a = 2; console.log(a) >>> 2 ====================== let a = 1; let a = 2; console.log(a) >>> SyntaxError: Identifier 'a' has already been declared ํ˜ธ์ด์ŠคํŒ…์ด ์ผ์–ด๋‚˜๋Š” ์˜ˆ์‹œ console.log(a) a = 10; console.log(a) var a = 1 console... 2022. 2. 16.
JS_๋ฌธ๋ฒ• (2)_๊ตฌ์กฐ ๋ถ„ํ•ด ํ• ๋‹น2, Rest-Spread ํŒŒ๋ผ๋ฏธํ„ฐ ๋ณ€์ˆ˜ ๊ฐ’ ๊ตํ™˜ํ•˜๊ธฐ let a = 1; let b = 2; [a, b] = [b, a] //๋Œ€๊ด„ํ˜ธ๋กœ ํ•ด์•ผ ๊ฐ€๋Šฅ console.log(a, b) >>> 2 1 ๋‹ค๋ฅธ ์–ธ์–ด์— ๋น„ํ•ด์„œ ๊ตํ™˜ํ•˜๋Š” ๊ฒƒ์ด ๊ฐ„๊ฒฐํ•˜๋‹ค. ํ•œ ๋ฒˆ์— ์—ฌ๋Ÿฌ ๊ฐ’ ํ• ๋‹น let a = 1; let b = 2; [a, b] = [3, 4] console.log(a, b) >>> 3 4 ํŒŒ์ด์ฌ์˜ ํŠœํ”Œ์ฒ˜๋Ÿผ ์—ฌ๋Ÿฌ ๊ฐ’์„ ํ• ๋‹นํ•˜๋Š” ๊ฒƒ์€ ์œ„์ฒ˜๋Ÿผ ์จ์ฃผ๋ฉด ๊ฐ€๋Šฅํ•˜๋‹ค. function data(){ return [1, 2] } let [a,b] = data() console.log(a, b) >>> 1 2 ํ•จ์ˆ˜์˜ ๋ฆฌํ„ด๊ฐ’์„ ๋ฐฐ์—ด๋กœ ์ง€์ •ํ•˜๋Š” ๊ฒƒ๋„ ์—ฌ๋Ÿฌ ๊ฐ’์„ ํ• ๋‹น์‹œํ‚ค๋Š” ๋ฐ์— ์ด์šฉ๊ฐ€๋Šฅํ•˜๋‹ค. ๋ฌธ์ž์—ด ๋ถ„๋ฆฌ ํŒŒ์ด์ฌ์—๋„ ์žˆ๋Š” .split() ํ•จ์ˆ˜! let data = 'Hello my.. 2022. 2. 15.
JS_๋ฌธ๋ฒ• (1)_์‚ผํ•ญ์—ฐ์‚ฐ์ž, ๊ตฌ์กฐ๋ถ„ํ•ด ํ• ๋‹น1 ์‚ผํ•ญ์—ฐ์‚ฐ์ž ์กฐ๊ฑด๋ฌธ์„ ์ข€ ๋” ๊ฐ„๊ฒฐํ•˜๊ฒŒ ํ‘œํ˜„๊ฐ€๋Šฅ (๊ฐ€๋…์„ฑ์€ ์ข€ ๋–จ์–ด์ง) ์กฐ๊ฑด ? ์ฐธ์ผ ๋•Œ : ๊ฑฐ์ง“์ผ ๋•Œ const arr = 'abcdef' let result = arr.length > 5 ? '5๊ธ€์ž ์ดˆ๊ณผ์ž…๋‹ˆ๋‹ค.' : '5๊ธ€์ž ์ดํ•˜ ์ž…๋‹ˆ๋‹ค.' console.log(result) >>> 5๊ธ€์ž ์ดˆ๊ณผ์ž…๋‹ˆ๋‹ค. ํ•จ์ˆ˜ ๊ธฐ๋ณธ๊ฐ’ ์„ค์ • function func(item="none data") { console.log(item) } func('name') func() >>> name none data ๊ตฌ์กฐ ๋ถ„ํ•ด ํ• ๋‹น ๋ฐฐ์—ด or ๊ฐ์ฒด์˜ ์†์„ฑ์„ ํ•ด์ฒดํ•ด์„œ ๊ฐ’์„ ๊ฐœ๋ณ„ ๋ณ€์ˆ˜์— ๋Œ€์ž…ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. 1. ๊ฐ์ฒด ๋ถ„ํ•ด ํ• ๋‹น let user = { name : "Kal", age : 23 }; // ๋™์ผ ํ”„๋กœํผํ‹ฐ๋ช…์„ ์‚ฌ์šฉ / ์ž๋™์œผ๋กœ ๋งค.. 2022. 2. 15.
JS_๊ธฐ๋ณธ๋ฌธ๋ฒ• (6)_๋ฐฐ์—ด 2 (๊ด€๋ จ ํ•จ์ˆ˜) ๋ฐฐ์—ด๊ณผ ๊ด€๋ จ๋œ ํ•จ์ˆ˜๋“ค์„ ์•Œ์•„๋ณด์ž! ์‚ฝ์ž… push ๋ฐฐ์—ด ๊ฐ€์žฅ ๋์— ์•„์ดํ…œ ์ถ”๊ฐ€ const data = [1,2,3]; data.push("Hey") console.log(data) >>> [1, 2, 3, "Hey"] ์—ญ์‹œ ์ž๋ฃŒํ˜•์— ๊ตฌ์• ๋ฐ›์ง€ ์•Š๋Š”๋‹ค. unshift ๋ฐฐ์—ด ์ฒซ ๋ฒˆ์งธ ์ž๋ฆฌ์— ์š”์†Œ ์‚ฝ์ž… const arr = [1, 2] arr.unshift(0); console.log(arr); >>> [ 0, 1, 2 ] ์‚ญ์ œ pop ํŒŒ์ด์ฌ์—๋„ ์žˆ๋Š” ๊ทธ ํ•จ์ˆ˜์ด๋‹ค. ๋ฐฐ์—ด ๊ฐ€์žฅ ์ž๋ฆฌ๋ฅผ ๋ฆฌํ„ดํ•˜๊ณ , ํ•ด๋‹น ์•„์ดํ…œ์€ ๋ฐฐ์—ด์—์„œ ์‚ญ์ œ๋œ๋‹ค. const arr = [1, 2, "Hey"] let data = arr.pop(); console.log(arr); console.log(data); >>> [ 1, 2 ] Hey //๊ฐ€.. 2022. 2. 15.
JS_๊ธฐ๋ณธ๋ฌธ๋ฒ• (5)_๋ฐฐ์—ด 1 ๋ฐฐ์—ด์„ ๋‹ค๋ฃฐ ๋•Œ๋Š” CRUD๋ฅผ ํ™•์ธํ•˜๋ฉด ๋œ๋‹ค. Create, Read, Update, Delete (์ƒ์„ฑ, ์ฝ๊ธฐ, ์ˆ˜์ •, ์‚ญ์ œ) JS ๋ฐฐ์—ด์˜ CRUD๋ฅผ ์•Œ์•„๋ณด์ž Create 1. ์ดˆ๊ธฐํ™”์™€ ์„ ์–ธ ๋™์‹œ์— const arr1 = [1,2,3,4]; const arr2 = [1,'2',3,'4']; ๊ฐ์ฒด์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋ฐฐ์—ด๋„ ๊ทธ ์ž์ฒด๋ฅผ ์ƒˆ๋กœ์šด ๊ฒƒ์œผ๋กœ ๋ฎ์–ด๋ฒ„๋ฆฌ๋Š” ๊ฒฝ์šฐ๊ฐ€ ๊ฑฐ์˜ ์—†์œผ๋ฏ€๋กœ const๋กœ ์ƒ์ˆ˜ ์„ ์–ธ์„ ์ฃผ๋กœ ํ•ด์ค€๋‹ค. ๋ฐฐ์—ด ์•ˆ ์š”์†Œ๋“ค์˜ ์ž๋ฃŒํ˜•์€ ํ†ต์ผ๋˜์ง€ ์•Š์•„๋„ ๋œ๋‹ค! 2. ๊ฐ์ฒด๋กœ ์„ ์–ธ (์ดˆ๊ธฐํ™”X ์„ ์–ธ) const arr = new Array() ๋ฐฐ์—ด์„ ๊ฐ์ฒด๋กœ ์„ ์–ธํ•  ์ˆ˜ ์žˆ๋‹ค! ์ด ๊ฒฝ์šฐ์—๋Š” ์ดˆ๊ธฐํ™”๋ฅผ ํ•˜์ง€ ์•Š์€ ๋นˆ ๋ฐฐ์—ด์ด๋‹ค. ์œ„์˜ ๊ณผ์ •์„ ๊ฑฐ์นœ ํ›„ ์•„๋ž˜์™€ ๊ฐ™์ด ์–ด๋– ํ•œ ํŠน์ • ์ธ๋ฑ์Šค๋งŒ ๊ฐ’์„ ๋„ฃ์–ด์ค€๋‹ค๋ฉด, const arr .. 2022. 2. 15.
JS_๊ธฐ๋ณธ๋ฌธ๋ฒ• (4)_๋ฐ˜๋ณต๋ฌธ ๋ฐ˜๋ณต๋ฌธ for๋ฌธ for (let index = 0; index .. 2022. 2. 11.
JS_๊ธฐ๋ณธ๋ฌธ๋ฒ• (3)_๊ฐ์ฒด ๊ฐ์ฒด JS๋Š” ๊ฐ์ฒด์ง€ํ–ฅ์–ธ์–ด์ด๋‹ค. ๊ฐ์ฒด๋Š” ํ”„๋กœํผํ‹ฐ์™€ ๋ฉ”์„œ๋“œ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋Š”๋ฐ ๋˜ํ•œ ํ”„๋กœํผํ‹ฐ๋Š” key: value๋กœ ๊ตฌ์„ฑ์ด ๋˜์–ด์žˆ๋‹ค. -> key(๋ฌธ์ž์—ดor์‹ฌ๋ณผ), value(์ €์žฅํ•  ๋ฐ์ดํ„ฐ) ์ฐธ๊ณ ๋กœ ํ•จ์ˆ˜์™€ ๋ฐฐ์—ด์€ ๊ฐ์ฒด์— ์†ํ•œ๋‹ค. ๊ฐ์ฒด ์ƒ์„ฑ ๋ฐฉ๋ฒ• ๊ฐ์ฒด ๋ฆฌํ„ฐ๋Ÿด ๋ฐฉ์‹ "{ }"๋กœ ๊ฐ์ฒด๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ๊ฒƒ์„ ๋ฆฌํ„ฐ๋Ÿด ๋ฐฉ์‹์ด๋ผ๊ณ  ํ•œ๋‹ค. (ํŒŒ์ด์ฌ dict์™€ ๋น„์Šท) const ๊ฐ์ฒด๋ช… = { key : value, ... }; ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•  ๋•Œ์—๋Š” ๋ณดํ†ต const๋ฅผ ์ด์šฉํ•ด ์ƒ์ˆ˜ ์„ ์–ธ์„ ํ•ด์ค€๋‹ค. ๊ทธ์— ๋”ฐ๋ผ ๊ฐ์ฒด ์ž์ฒด๋ฅผ ๋ฐ”๊ฟ€ ์ˆ˜ ์—†์ง€๋งŒ, ๋‚ด๋ถ€์˜ ํ”„๋กœํผํ‹ฐ, ๋ฉ”์„œ๋“œ ๋“ฑ์€ ๋ณ€๊ฒฝ์ด ๊ฐ€๋Šฅํ•˜๋‹ค! (let์„ ์ด์šฉํ•ด ์ƒ์„ฑํ•˜๋ฉด ๊ฐ์ฒด ์ž์ฒด๋„ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋‹ค.) key ํ”„๋กœํผํ‹ฐ๋ช…(key)์€ ๋”ฐ์˜ดํ‘œ๋ฅผ ๋ถ™์ด์ง€ ์•Š์•„๋„ ๋˜๊ณ  ์ด๋Ÿฌํ•œ ๊ฒฝ์šฐ, ๋ฌธ์ž, ์–ธ๋”๋ฐ”, ๋‹ฌ๋Ÿฌ .. 2022. 2. 10.
JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ• (2)_์—ฐ์‚ฐ์ž&ํ•จ์ˆ˜ ์—ฐ์‚ฐ์ž ์‚ฌ์น™์—ฐ์‚ฐ + - * / ++์—ฐ์‚ฐ์ž C์™€ ๊ฐ™์Œ! i++ / ++i ๋Œ€์ž…์—ฐ์‚ฐ์ž = (ํ• ๋‹น) ๋™๋“ฑ ์—ฐ์‚ฐ์ž(==) ์ผ์น˜ ์—ฐ์‚ฐ์ž(===) ๋™๋“ฑ : ๊ฐ’๋งŒ ๋น„๊ต ์ผ์น˜ : ๊ฐ’ & ๋ฐ์ดํ„ฐ ํƒ€์ž… ๋น„๊ต (์ด ๋…€์„์„ ์ฃผ๋กœ ์“ฐ์ž!) ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž ! : not && : and || : or ๋น„๊ต์—ฐ์‚ฐ์ž >, =, false : true - 0 >> true >>> false !=, !== ์˜ ๊ด€๊ณ„๋„ ์œ„์™€ ๊ฐ™๋‹ค. consol.. 2022. 2. 8.
๋ฐ˜์‘ํ˜•