JavaScript 16

pnpm์„ ์‚ฌ์šฉํ•˜๊ธฐ๋กœ ํ•˜์˜€์–ด์š” ๐Ÿคญ

์˜ค๋Š˜์€ ๋“œ๋””์–ด Yarn์„ ์ฒญ์‚ฐํ•˜๊ณ  pnpm์œผ๋กœ ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €๋ฅผ ๊ฐˆ์•„ํƒ„ ๋‚ ์ด๋‹ค! ๐Ÿฅณ๊ทธ๋ž˜์„œ ์™œ pnpm์„ ์„ ํƒํ–ˆ๋Š”์ง€, pnpm์˜ ์žฅ์ ์€ ๋ฌด์—‡์ธ์ง€์— ๋Œ€ํ•ด ์ ์–ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค.๊ทธ์ „์— ๋จผ์ € ๋Œ€ํ‘œ์ ์ธ ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €๋ฅผ ๋ช‡ ๊ฐœ ์•Œ์•„๋ณด์ž.1. npmnpm์€ ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €์˜ ์„ ๊ตฌ์ž๋ผ ํ•  ์ˆ˜ ์žˆ๋‹ค.npm์€ ๊ธฐ๋ณธ์ ์œผ๋กœ node_modules ํด๋”์— ๋ชจ๋“  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์ €์žฅ๋œ๋‹ค. ํ•˜์ง€๋งŒ ๋ฌธ์ œ๋Š” ๊ฐ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ๋‚ด๋ถ€์ ์œผ๋กœ ๋˜ ๋‹ค๋ฅธ node_modules๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ์ด๋กœ ์ธํ•ด node_modules ํด๋”๊ฐ€ ๊ต‰์žฅํžˆ ๋ฌด๊ฑฐ์›Œ์ง€๊ณ , ํŒŒ์ผ์„ ํƒ์ƒ‰ํ•˜๋Š” ๋ฐ ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆฐ๋‹ค.๋˜ํ•œ npm์€ ๋™์ผํ•œ ๋ฒ„์ „์˜ ํŒจํ‚ค์ง€๊ฐ€ ์—ฌ๋Ÿฌ ๊ณณ์—์„œ ํ•„์š”ํ•  ๋•Œ, ์ด๋ฅผ ์ตœ์ƒ์œ„ node_modules๋กœ ํ˜ธ์ด์ŠคํŒ… ํ•˜์—ฌ ์ค‘๋ณต ์„ค์น˜๋ฅผ ๋ฐฉ์ง€ํ•œ๋‹ค. ํ•˜์ง€๋งŒ ์„œ๋กœ ๋‹ค๋ฅธ ๋ฒ„..

JavaScript 2025.02.25

bundler -Webpack ๊ทธ๋ฆฌ๊ณ  Vite

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

JavaScript 2025.02.10

History API ๋œฏ์–ด ๋ณด๊ธฐ

๋ฐ”๋กœ ์–ด์ œ Client Side Routing์„ ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์•Œ๊ฒŒ ๋œ History API๋„๋Œ€์ฒด ์–ด๋–ป๊ฒŒ URL๋งŒ ๋‚ด๋ถ€์ ์œผ๋กœ ๋ณ€๊ฒฝํ•  ์ˆ˜๊ฐ€ ์žˆ์ง€? ๐Ÿคท‍โ™€๏ธ๋ธŒ๋ผ์šฐ์ €๋Š” ์–ด๋–ป๊ฒŒ ๊ทธ๊ฑธ ์„œ๋ฒ„์— ์š”์ฒญํ•˜์ง€ ์•Š๋Š” ๊ฑฐ์•ผ?๐Ÿคท‍โ™‚๏ธ ๋„๋Œ€์ฒด ์™œ? ๐Ÿคท์–ด๋–ค ์›๋ฆฌ๋กœ?? ๐Ÿคท‍โ™€๏ธ๐Ÿคท‍โ™‚๏ธ๐Ÿคท ์ด๋Ÿฐ ๊ถ๊ธˆ์ฆ์ด ์ƒ๊ฒจ์„œ ๋ณธ๊ฒฉ์ ์œผ๋กœ ๋œฏ์–ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค.๐Ÿ“Œ History API๋Š” ๋ธŒ๋ผ์šฐ์ €์— ํƒ‘์žฌ๋œ ๊ธฐ๋ณธ ๊ธฐ๋Šฅ์ด๋‹ค.๊ทธ๋ž˜์„œ ์ด๋Ÿฐ ๊ฒŒ ๊ฐ€๋Šฅํ•˜๋‹ค.(ํ˜ผ์ž ๊ฐœ๋ฐœ์ž ๋„๊ตฌ์— ์ณ๋ณด๊ณ  ์‹ ๊ธฐํ•ด์„œ ์†Œ๋ฆฌ๋ฅผ ์งˆ๋ €..) ์ด๋™ ๊ณผ์ • :google ํŽ˜์ด์ง€ -> history api ๊ฒ€์ƒ‰ ํŽ˜์ด์ง€ -> mdn ํŽ˜์ด์ง€ ๋”ฐ๋ผ์„œ mdn ํŽ˜์ด์ง€์—์„œ history.length๋ฅผ ์ฝ˜์†”์— ์ฐ์–ด๋ณด๋ฉด 3๋ฒˆ์งธ ํŽ˜์ด์ง€์ด๊ธฐ ๋•Œ๋ฌธ์— 3์ด ๋‚˜์˜จ๋‹ค.๋˜ back(), forward() method๋ฅผ ํ†ตํ•ด ๋’ค..

JavaScript 2025.02.07

[JavaScript] Spread Operator & Rest Operator

1. Spread Operator (์Šคํ”„๋ ˆ๋“œ ์—ฐ์‚ฐ์ž)spread๋ผ๋Š” ๋‹จ์–ด๋งŒ ๋ด๋„ ๊ฐ์ด ๋”ฑ! ์˜ฌ ๊ฒƒ ๊ฐ™๋‹ค. ํฉ๋ฟŒ๋ฆฌ๋Š” ๋А๋‚Œ, ์ซ™ ํŽผ์น˜๋Š” ๊ทธ๋Ÿฐ ๋А๋‚Œ?! ํ”ํ•˜๊ฒŒ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ž˜ ์•Œ์•„๋‘๋ฉด ๋‹ค๋ฅธ ์‚ฌ๋žŒ ์ฝ”๋“œ ๋ถ„์„ํ•˜๊ธฐ์—๋„ ์ข‹๊ณ  ๋‚ด ์ฝ”๋“œ ์งœ๊ธฐ์—๋„ ํŽธํ•  ๊ฒƒ์ด๋‹ค.๊ทธ๋Ÿผ ๋ฟŒ์…”๋ณด์ž! ์Šคํ”„๋ ˆ๋“œ ์—ฐ์‚ฐ์ž๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ƒํ™ฉ์—์„œ ์‚ฌ์šฉํ•œ๋‹ค.๊ฐ์ฒด๋‚˜ ๋ฐฐ์—ด์„ ๋ณต์‚ฌ ํ•  ๋•Œ๋‘ ๋ฐฐ์—ด์„ ๊ฐ„ํŽธํ•˜๊ฒŒ ํ•ฉ์น  ๋•Œ ์˜ˆ์‹œ๋ฅผ ์‚ดํŽด๋ณด๋ฉฐ ๊ณต๋ถ€ํ•ด ๋ณด์ž.1. ๊ฐ์ฒด์˜ ๋ณต์‚ฌ ๋ฐ ํ™•์žฅconst user1 = { name : "Dana", level : 10, age : 28, isAdmin : true};const user2 = {...user1, name : "Jasmine"};console.log(user1); // { name: 'Dana', level: 10..

JavaScript 2025.01.20

[JavaScript] Null ๋ณ‘ํ•ฉ ์—ฐ์‚ฐ์ž (??) vs ๋…ผ๋ฆฌ OR ์—ฐ์‚ฐ์ž (||)

๊ฐ•์˜๋ฅผ ๋“ฃ๋˜ ์ค‘ ??์™€ ||์˜ ์ฐจ์ด์— ๋Œ€ํ•œ ๋‚ด์šฉ์ด ๋‚˜์™”๋‹ค.'๊ทธ๋ƒฅ ๋˜‘๊ฐ™์€ ๊ฑฐ ์•„๋‹Œ๊ฐ€?'๋ผ๊ณ  ์ƒ๊ฐํ–ˆ๋˜ 10๋ถ„ ์ „์˜ ๋‚˜. (๋ฐ˜์„ฑํ•ด)๊ทธ๋ž˜ ๋˜‘๊ฐ™์œผ๋ฉด ๋‘ ๊ฐœ๊ฐ€ ์žˆ์„ ๋ฆฌ ์—†์ง€!๋‹ค์‹œ ํ•œ๋ฒˆ '์‚ฌ์†Œํ•œ ์ฐจ์ด๋ผ๋„ ์ง€๋‚˜์น˜์ง€ ๋ง์ž'๋ฅผ ๋งˆ์Œ์— ๋˜์ƒˆ๊ธฐ๋ฉฐ ๋ธ”๋กœ๊ทธ์— ๋ฐ•์ œํ•ด ๋‘๋ ค๊ณ  ํ•œ๋‹ค. Null ๋ณ‘ํ•ฉ ์—ฐ์‚ฐ์ž (??)๋Š” ์—ฐ์‚ฐ์ž์˜ ์ขŒ๋ณ€์ด falsy๋ผ ํ•˜๋”๋ผ๋„ null ๋˜๋Š” undefined ์ผ ๋•Œ์—๋งŒ ์šฐ๋ณ€์„ ํ‰๊ฐ€ํ•œ๋‹ค.๋ฐ˜๋ฉดOR ์—ฐ์‚ฐ์ž (||)๋Š” ์ขŒ๋ณ€์ด falsy ์ผ ๋•Œ ์šฐ๋ณ€์„ ํ‰๊ฐ€ํ•œ๋‹ค. ์—ฌ๊ธฐ์„œ ์ž ๊น ! falsy๋กœ ์ทจ๊ธ‰๋˜๋Š” ๊ฐ’์—๋Š” ์–ด๋–ค ๊ฒƒ๋“ค์ด ์žˆ์„๊นŒ? (์ฐธ๊ณ ๋กœ ๊ฐ™์ด ์•Œ์•„๋‘์ž): false, 0, "", null, undefined, NaN ์ž ๋‹ค์‹œ ๋ณธ๋ก ์œผ๋กœ ๋Œ์•„์™€์„œ์•„๋ž˜ ์˜ˆ์‹œ๋ฅผ ๋ณด๋ฉด ์‰ฝ๊ฒŒ ์ดํ•ด๊ฐ€ ๊ฐˆ ๊ฒƒ์ด๋‹ค.let initUserType = n..

JavaScript 2025.01.20

[JavaScript] Object.assign()

๊ฐ์ฒด๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ ๋ฐ›์•„ ํ•˜๋‚˜์˜ ๊ฐ์ฒด๋กœ ํ•ฉ์ณ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ค์–ด๋ผ.(๋‹จ, ์›๋ณธ ๊ฐ์ฒด๋“ค์€ ์ˆ˜์ •ํ•˜์ง€ ์•Š์•„์•ผ ํ•œ๋‹ค.)๋ผ๋Š” ๋ฏธ์…˜(?)์„ ๋ฐ›์•˜๋‹ค. ์ฃผ์˜!! ์—ฌ๊ธฐ์„œ๋ถ€ํ„ฐ ์˜ค๋‹ต์ž”์น˜์ž…๋‹ˆ๋‹ค!!! function mergeObjs(...objs) { return ...objs}์ด๊ฑด๊ฐ€? ๋•ก! ์ผ๋‹จ ๋‚˜๋Š” ์—ฌ๋Ÿฌ๊ฐœ์˜ ๋ฐฐ์—ด์ด ๋“ค์–ด์˜ค๋ฉด์„œ ์ฐจ๊ณก์ฐจ๊ณก ์Œ“์—ฌ์„œ.. returnํ•  ๋•Œ๋„ ๊ทธ๋Œ€๋กœ ๋‚ด๋ณด๋‚ด๋ฉด ๋  ์ค„ ์•Œ์•˜๋‹ค.๐Ÿคฃํ•˜์ง€๋งŒ ๊ทธ๊ฑด ๋‚˜๋งŒ์˜ ์ƒ๊ฐใ…Ž ์ €๋ ‡๊ฒŒ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์Šคํ”„๋ ˆ๋“œ ํ˜•์‹์œผ๋กœ ๋ฐ›์œผ๋ฉด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ๋ฐฐ์—ด์˜ ํ˜•ํƒœ๋กœ ๋“ค์–ด์˜จ๋‹ค.function mergeObjs(...objs) { console.log(objs); // [{ x: 1, y: 2 },{ y: 3, z: 4 )] console.log(...objs); // { x: 1, y..

JavaScript 2025.01.17

[JavaScript] this๋ฅผ ๋‚ด ๋งˆ์Œ ๋Œ€๋กœ ์—ฎ์–ด๋ณด์ž! - call(), apply(), bind()

this? ๊ทธ๊ฒŒ ๋ญ”๋ฐ?? ๐Ÿคจthis๋Š” ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ์ฃผ์ฒด๋ผ๊ณ  ์ดํ•ดํ•˜๋ฉด ์‰ฝ๋‹ค.const pizza = { name : 'ํ•˜์™€์ด์•ˆ ํ”ผ์ž', price : 24000, order : function () { console.log(this); // { name: 'hawaian pizza', price: 24000, order: [Function: order] } console.log(`${this.name}๋Š” ${this.price}์›์ž…๋‹ˆ๋‹ค.`); // ํ•˜์™€์ด์•ˆ ํ”ผ์ž๋Š” 24000์›์ž…๋‹ˆ๋‹ค. }};pizza.order(); ์œ„์˜ ์˜ˆ์‹œ์—์„œ๋Š” order ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•œ ๊ฒƒ์ด pizza์ด๊ธฐ ๋•Œ๋ฌธ์— this๋Š” pizza object๊ฐ€ ๋œ๋‹ค. function orderPizza (name,price)..

JavaScript 2025.01.17

[JavaScript] ๋ฐฐ์—ด์—์„œ ์ค‘๋ณต์ œ๊ฑฐ๋ฅผ ํ•˜๋Š” ๋ฐฉ๋ฒ•

์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ๋ฅผ ํ’€๋˜ ์ค‘๋ฐฐ์—ด์—์„œ ์ค‘๋ณต ์ œ๊ฑฐ๋ฅผ ํ•ด์•ผ ํ•˜๋Š” ์ƒํ™ฉ์ด ์ƒ๊ฒผ๋‹ค.๋‚˜๋Š” Set์„ ์‚ฌ์šฉํ•ด์„œ ํ•ด๊ฒฐํ–ˆ์ง€๋งŒ, ๊ตฌ๊ธ€๋ง ํ•ด๋ณด๋‹ˆ ๋‹ค์–‘ํ•œ ๋ฐฉ๋ฒ•์ด ์žˆ๋Š” ๊ฑฐ ๊ฐ™์•„ ์ถ”ํ›„์— ์ฐธ๊ณ ํ•˜๊ธฐ ์œ„ํ•ด ์ •๋ฆฌํ•ด๋‘๋ ค๊ณ  ํ•œ๋‹ค.1.  new Set ์‚ฌ์šฉํ•˜๊ธฐconst colors = ['red', 'blue', 'green', 'yellow','pink','green','red'];const filterDuplicatation = (arr) => { return [...new Set(arr)];}console.log(filterDuplicatation(colors)); // [ 'red', 'blue', 'green', 'yellow', 'pink' ]  new Set(arr)๋ฅผ ํ•˜๋ฉด, ์ค‘๋ณต ๊ฐ’์„ ์ถ”๊ฐ€๋กœ ๋“ฑ๋กํ•˜์ง€ ์•Š๋Š” Set์˜ ํŠน์„ฑ์ƒ, ์ค‘๋ณต๋œ..

JavaScript 2025.01.16

[JavaScript] Array.prototype.splice()

์•„๋ž˜์™€ ๊ฐ™์€ ๋ฌธ์ œ๋ฅผ ๋ฐ›์•˜๋‹ค.* ์•„๋ž˜ ๋‚ด์šฉ์„ ๊ตฌํ˜„ํ•˜์„ธ์š” 1. arr ๋ฐฐ์—ด์˜ start ์ธ๋ฑ์Šค๋ถ€ํ„ฐ deleteCount๋งŒํผ ์š”์†Œ๋ฅผ ์ œ๊ฑฐํ•œ ๋’ค, 2. ๊ทธ ์ž๋ฆฌ์— items๋ฅผ ์‚ฝ์ž…ํ•˜์„ธ์š”. 3. ๋ฐ˜๋“œ์‹œ splice ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. 4. ์›๋ณธ ๋ฐฐ์—ด arr๋ฅผ ์ง์ ‘ ์กฐ์ž‘ํ•˜๊ณ , ์กฐ์ž‘๋œ ๋ฐฐ์—ด์„ ๋ฐ˜ํ™˜ํ•˜์„ธ์š”. * @param {any[]} arr * @param {number} start * @param {number} deleteCount * @param {...any} items * @returns {any[]} ์กฐ์ž‘ ํ›„์˜ arr ๊ฐ„๋‹จํ•˜์ง€!function removeAndInsert(arr, start, deleteCount, ...items) { return arr.splice(start,deleteCou..

JavaScript 2025.01.16

[JavaScript] ๊ณ ์ฐจ ํ•จ์ˆ˜์˜ ๋Šช์— ๋น ์ง„ ๋‚ 

๊ณ ์ฐจ ํ•จ์ˆ˜.๋ญ์ง€ ์ด ๊ต‰์žฅํžˆ ์–ด๋ ค์šธ ๊ฒƒ๋งŒ ๊ฐ™์€ ์ด๋ฆ„์€..? ์ซ„์ง€ ๋ง์ž!์‚ฌ์‹ค ๊ณ ์ฐจ ํ•จ์ˆ˜๋Š” ์ด๋ฏธ ์šฐ๋ฆฌ๊ฐ€ ๋ฐฅ ๋จน๋“ฏ์ด ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค.๋‹จ์ง€ ์ € ์šฉ์–ด๊ฐ€ ์ƒ์†Œํ•  ๋ฟ..(๋‚˜๋งŒ ๊ทธ๋Ÿด์ˆ˜๋„) ๊ทธ๋Ÿผ ๊ณ ์ฐจ ํ•จ์ˆ˜๋ฅผ ํŒŒํ—ค์ณ๋ณด์ž. ๊ณ ์ฐจ ํ•จ์ˆ˜๋ž€?ํ•จ์ˆ˜๋ฅผ ์ธ์ž๋กœ ๋ฐ›๋Š” ํ•จ์ˆ˜ํ•จ์ˆ˜๋ฅผ ๊ฒฐ๊ณผ๋กœ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜ ํ•จ์ˆ˜๋ฅผ ์ธ์ž๋กœ ๋ฐ›๋Š”๋‹ค ..? ๋„ˆ๋ฌด ์ต์ˆ™ํ•˜์ง€ ์•Š๋‚˜์š”? const getUsersName = data.map(({name}) => name) map ๋ฉ”์„œ๋“œ๋Š” ์ธ์ž๋กœ ์ฝœ๋ฐฑ ํ•จ์ˆ˜๋ฅผ ๋„ฃ์–ด์ค€๋‹ค.์–ด? ํ•จ์ˆ˜์— ์ฝœ๋ฐฑ ํ•จ์ˆ˜๋ฅผ ์ธ์ž๋กœ ๋„ฃ์—ˆ๋„ค? ์•„! map๋„ ๊ณ ์ฐจ ํ•จ์ˆ˜๊ตฌ๋‚˜~ ๋ญ์•ผ ๋ณ„๊ฑฐ ์•„๋‹ˆ๋„ค. ํ•˜์ง€๋งŒ ๋‚ด๊ฐ€ ์˜ค๋Š˜ ์ด ๊ธ€์„ ์“ด ์ด์œ ..๋ฐ”๋กœ ํ•จ์ˆ˜๋ฅผ ๊ฒฐ๊ณผ๋กœ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜์—์„œ ๋ช‡ ์‹œ๊ฐ„์„ ํ—ค๋งธ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.ใ…Ž default : throttle ..

JavaScript 2025.01.16