๐Ÿ’ป๊ฐœ๋ฐœ๊ณต๋ถ€/JavaScript 3

JavaScript ์Šคํ”„๋ ˆ๋“œ ๋ฌธ๋ฒ• ์•Œ์•„๋ณด๊ธฐ

ES6(ECMAScript 2015) ์—์„œ ์ƒˆ๋กœ ์ƒ๊ธด spread operator. spread operator๋Š” ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ(iterable) ๊ฐ์ฒด์— ์ ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ๋ฒ•์œผ๋กœ, ๋ฐฐ์—ด์ด๋‚˜ ๋ฌธ์ž์—ด ๋“ฑ์„ ๊ฐœ๋ณ„ ์š”์†Œ๋กœ ๋ถ„๋ฆฌ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค. // ES6์—์„œ๋Š” ๋ฐฐ์—ด์— ๋Œ€ํ•œ ์Šคํ”„๋ ˆ๋“œ ๋ฌธ๋ฒ• ์‚ฌ์šฉ ๊ฐ€๋Šฅ const arr1 = [1, 2, 3]; const arr2 = [...arr1, 4, 5]; ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ?๐Ÿค” ์›๋ณธ๋ฐฐ์—ด ๋˜๋Š” ๊ฐ์ฒด๋ฅผ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๊ณ  ์ƒˆ๋กœ์šด ๋ณต์‚ฌ๋ณธ์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ๋‹ค. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ๋ฐฐ์—ด๊ณผ ๊ฐ์ฒด๋Š” ์ฐธ์กฐ์— ์˜ํ•ด ์ „๋‹ฌ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๊ทธ๋ƒฅ ๋Œ€์ž…ํ•˜๋ฉด ์ฐธ์กฐ ์ฃผ์†Œ๋งŒ ๋ณต์‚ฌ๋˜์–ด ๋‘ ๋ณ€์ˆ˜๊ฐ€ ๊ฐ™์€ ๊ฐ์ฒด๋ฅผ ๊ฐ€๋ฆฌํ‚ค๊ฒŒ ๋จ. ์Šคํ”„๋ ˆ๋“œ ๋ฌธ๋ฒ• ์‚ฌ์šฉํ• ๋•Œ vs ์‚ฌ์šฉ์•ˆํ• ๋•Œ ์ฐจ์ด์ ์€? // ์›๋ณธ ๋ฐฐ์—ด const originalArray = [..

JS๊ธฐ์ดˆ | Ajax, JSON ๊ฐœ๋…์ •๋ฆฌ ๋ฐ ํ™œ์šฉ๋ฐฉ๋ฒ•

Ajax๋ž€? Ajax๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•ด ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์„œ๋ฒ„์—๊ฒŒ ๋น„๋™๊ธฐ ๋ฐฉ์‹์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์š”์ฒญํ•˜๊ณ , ์„œ๋ฒ„๊ฐ€ ์‘๋‹ตํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์‹ ํ•˜์—ฌ ์›นํŽ˜์ด์ง€๋ฅผ ๋™์ ์œผ๋กœ ๊ฐฑ์‹ ํ•˜๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ์‹์ด๋‹ค. Ajax๋Š” XMLHttpRequest ๊ฐ์ฒด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘ํ•˜๋ฉฐ, http ๋น„๋™๊ธฐ ํ†ต์‹ ์„ ์œ„ํ•œ ๋ฉ”์„œ๋“œ์™€ ํ”„๋กœํผํ‹ฐ๋ฅผ ์ œ๊ณตํ•œ๋‹ค. ์ „ํ†ต์ ์ธ ์›นํŽ˜์ด์ง€์˜ ์ƒ๋ช…์ฃผ๊ธฐ ์˜ˆ์ „์˜ ์›นํŽ˜์ด์ง€๋Š” ์™„์ „ํ•œ html ํƒœ๊ทธ๋กœ ๊ฐ์‹ธ์ง„ html ํŒŒ์ผ์„ ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ์ „์†ก๋ฐ›์•„ ์›นํŽ˜์ด์ง€ ์ „์ฒด๋ฅผ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋‹ค์‹œ ๋žœ๋”๋ง ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๋™์ž‘ํ–ˆ๋‹ค. ๋”ฐ๋ผ์„œ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ํ™”๋ฉด์ „ํ™˜์„ ์š”์ฒญํ•˜๋ฉด, ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ์ƒˆ๋กœ์šด html์„ ์ „์†ก๋ฐ›์•„ ์›นํŽ˜์ด์ง€ ์ „์ฒด๋ฅผ ๋‹ค์‹œ ์ƒˆ๋กœ๊ณ ์นจ ํ•ด์•ผํ–ˆ๋‹ค. ์œ„์™€ ๊ฐ™์ด ๋™์ž‘ํ•˜๋ฉด ์–ด๋–ค ๋‹จ์ ์ด ์žˆ์„๊นŒ? 1. ๋ณ€๊ฒฝ๋  ํ•„์š”๊ฐ€ ์—†๋Š” ๋ถ€๋ถ„๊นŒ์ง€ ๋งค๋ฒˆ ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ์žฌ์ „์†ก ๋ฐ›๊ธฐ๋•Œ๋ฌธ์— ๋ถˆ..

JS | ๋””์ŠคํŠธ๋Ÿญ์ฒ˜๋ง ํ• ๋‹น (Destructuring)

'๋ชจ๋˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ Deep Dive' (36์žฅ)์„ ์ฝ๊ณ  ์ •๋ฆฌํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค ๊ฐ์ฒด๋ฅผ 1๊ฐœ ์ด์ƒ์˜ ๋ณ€์ˆ˜์— ๊ฐœ๋ณ„์ ์œผ๋กœ ํ• ๋‹นํ•˜๊ณ  ์‹ถ์„๋•Œ, ๊ฐ์ฒด ๋ฆฌํ„ฐ๋Ÿด์—์„œ ํ•„์š”ํ•œ ๊ฐ’๋งŒ ์ถ”์ถœํ•˜์—ฌ ๋ณ€์ˆ˜์— ํ• ๋‹น์‹œํ‚ค๋Š” ๋ฐฉ์‹์„ Destructuring Assignment, ๋””์ŠคํŠธ๋Ÿญ์ฒ˜๋ง ํ• ๋‹น์ด๋ผ๊ณ  ํ•œ๋‹ค. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ๋ฐฐ์—ด๊ณผ ๊ฐ์ฒด๋ฅผ ๊ฐ๊ฐ ๋ถ„ํ• ํ•ด์„œ ๋ณ€์ˆ˜์— ํ• ๋‹น์‹œํ‚ค๋Š” ๋ฐฉ์‹์„ ์•Œ์•„๋ณด์ž. 1. ๋ฐฐ์—ด ๋””์ŠคํŠธ๋Ÿญ์ฒ˜๋ง (ES6 ๊ธฐ์ค€) const arr = [1, 2, 3]; // ES6 ๋ฐฐ์—ด ๋””์ŠคํŠธ๋Ÿญ์ฒ˜๋ง ํ• ๋‹น const [one, two, three] = arr; console.log(one, two, three);// 1 2 3 ์œ„์˜ ์ฝ”๋“œ๋ฅผ ๋ณด๋ฉด ๋ณ€์ˆ˜ one, two, three๋ฅผ ์„ ์–ธํ•˜๊ณ  ๋ฐฐ์—ด arr๋ฅผ ๋น„๊ตฌ์กฐํ™”(๋””์ŠคํŠธ๋Ÿญ์ฒ˜๋ง) ํ•˜์—ฌ ๋ณ€์ˆ˜์— ํ• ๋‹น์‹œ์ผœ ์ค€..