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

๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ213

[3/31~4/1] TIL_4, 5์ผ์ฐจ ์˜ค๋Š˜ ๊ณต๋ถ€ํ•œ ๋‚ด์šฉ ๐Ÿ“ JS์˜ ์ƒ์„ฑ์žํ•จ์ˆ˜๋ฅผ ๋งˆ๋ฌด๋ฆฌํ•˜๊ณ  ์ด์–ด์„œ ๋‹ค๋ฅธ ์–ธ์–ด์—์„œ๋„ ์‚ฌ์šฉํ•˜๋Š” ํด๋ž˜์Šค์— ๋Œ€ํ•ด์„œ ๊ณต๋ถ€ํ•˜์˜€๋‹ค. ํด๋ž˜์Šค๋ฅผ ๊ณต๋ถ€ํ•˜๋˜ ๋„์ค‘ '์ƒ์„ฑ์žํ•จ์ˆ˜์™€ ๋‹ฌ๋ฆฌ ํด๋ž˜์Šค๋Š” ํ˜ธ์ด์ŠคํŒ…์ด ๋˜์ง€ ์•Š๋Š”๋‹ค (์‹ค์ œ๋กœ๋Š” ๋˜์ง€๋งŒ...)' ์ด๋ผ๋Š” ๋ฌธ๊ตฌ์—์„œ ์‹ค์ œ๋กœ๋Š” ๋œ๋‹ค๋Š” ๊ฒƒ์— ๊ฝ‚ํ˜€์„œ ๊ณผ์—ฐ ์–ด๋–ค ์›๋ฆฌ๋กœ ์ด๋ฃจ์–ด์ง€๊ณ  ์™œ ์ด๋Ÿฌํ•œ ๋ฌธ๊ตฌ๊ฐ€ ๋‚˜์™”๋Š”์ง€ ๋งค์šฐ ๊ถ๊ธˆํ•ด์ ธ์„œ ๊ณง๋ฐ”๋กœ ๊ตฌ๊ธ€๋ง์„ ํ•ด๋ณด์•˜๋‹ค! 2023.03.31 - [๐ŸŒŒ | WEB DEV/Vanilla JS] - JS_๊ธฐ์ˆ  (3)_ Hoisting(ํ˜ธ์ด์ŠคํŒ…) ๋ฟŒ์ˆ˜๊ธฐ ๊ทธ์— ๋Œ€ํ•œ ๊ธ€์€ ์œ„์˜ ๊ธ€์—์„œ ์ž์„ธํžˆ ์ •๋ฆฌํ•ด๋ณด์•˜๋‹ค. ์˜ˆ์ •์— ์—†๋˜ ๊ฒƒ์ด์ง€๋งŒ ๊ถ๊ธˆํ–ˆ๋˜ ๋‚ด์šฉ์„ ์—ด์‹ฌํžˆ ์บ๋ณผ ์ˆ˜ ์žˆ์–ด์„œ ๊ฐ’์ง„ ์‹œ๊ฐ„์ด์—ˆ๋˜ ๊ฒƒ ๊ฐ™๋‹ค! ๊ทธ ๋’ค์—๋Š” ์šด์˜์ฒด์ œ ์ •๋ฆฌ๋ฅผ ์ง„ํ–‰ํ•˜์˜€๋‹ค! ์–ด๋ ค์› ๋˜ ๋‚ด์šฉ ๐Ÿ˜ž ํ˜ธ์ด์ŠคํŒ…์„ ๊ฐ€๋ณ๊ฒŒ ์•Œ๊ณ  ์žˆ์—ˆ๋Š”๋ฐ .. 2023. 4. 2.
JS_๊ธฐ์ˆ  (3)_ Hoisting(ํ˜ธ์ด์ŠคํŒ…) ๋ฟŒ์ˆ˜๊ธฐ JS์˜ ํ˜ธ์ด์ŠคํŒ…์— ๋Œ€ํ•ด์„œ ์ž์„ธํžˆ ์•Œ์•„๋ณด์•˜๋‹ค! 1. ํ˜ธ์ด์ŠคํŒ…์ด๋ž€? ( 1 ) ํ˜ธ์ด์ŠคํŒ…(Hoisting)์ด๋ž€ ๋ฌด์—‡์ผ๊นŒ JavaScript์—์„œ ํ˜ธ์ด์ŠคํŒ…(hoisting)์ด๋ž€, ์ธํ„ฐํ”„๋ฆฌํ„ฐ๊ฐ€ ๋ณ€์ˆ˜์™€ ํ•จ์ˆ˜์˜ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ์„ ์–ธ ์ „์— ๋ฏธ๋ฆฌ ํ• ๋‹นํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. - MDN (https://developer.mozilla.org/ko/docs/Glossary/Hoisting) MDN ๋ฌธ์„œ์—์„œ๋Š” ์œ„์™€ ๊ฐ™์ด ๋ฒˆ์—ญ์„ ํ•˜์˜€๋‹ค. ์ฆ‰, JS์˜ ์ธํ„ฐํ”„๋ฆฌํ„ฐ๊ฐ€ ์ฝ”๋“œ๋ฅผ ์ฝ๊ธฐ ์‹œ์ž‘ํ•  ๋•Œ ์„ ์–ธ๋œ ๋ณ€์ˆ˜, ์ƒ์ˆ˜, ํ•จ์ˆ˜ ๋“ฑ์„ ๋ชจ๋‘ ๋ฏธ๋ฆฌ ํ• ๋‹น์„ ํ•˜๋Š” ์ž‘์—…์„ ์˜๋ฏธํ•œ๋‹ค. ๊ธ€์˜ ๋ณธ๊ฒฉ์ ์ธ ์‹œ์ž‘์— ์•ž์„œ ๋ชจ๋“  ์‹๋ณ„์ž(๋ณ€์ˆ˜, ํ•จ์ˆ˜, ํด๋ž˜์Šค ๋“ฑ)๋Š” ํ˜ธ์ด์ŠคํŒ…์ด ๋œ๋‹ค! ( 2 ) var์˜ ํŠน์ง• JS์—์„œ ๋ณ€์ˆ˜, ์ƒ์ˆ˜๋ฅผ ์„ ์–ธํ•˜๋Š” ๋ฐฉ๋ฒ•์€ 3๊ฐ€์ง€๊ฐ€ ์žˆ๋‹ค. 1.var .. 2023. 3. 31.
JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ• (24)_ ์ƒ์„ฑ์ž ํ•จ์ˆ˜ 1. ์ƒ์„ฑ์ž ํ•จ์ˆ˜ ํ•จ์ˆ˜๋Š” ์žฌ์‚ฌ์šฉ๊ฐ€๋Šฅํ•œ ์ฝ”๋“œ๋ฅผ ๋ฌถ๋Š” ๊ฒƒ ์™ธ์—๋„ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๋Š” ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค. โ€ป function์œผ๋กœ ์„ ์–ธ๋œ ํ•จ์ˆ˜๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์ƒ์„ฑ์ž ํ•จ์ˆ˜์˜ ๊ธฐ๋Šฅ์„ ๊ฐ–๋Š”๋‹ค. ์˜ˆ์‹œ) ๊ฐ์ฒด ์ƒ์„ฑ const student1 = { name : 'Sam', idNum : 20, say () { return `์•ˆ๋…•ํ•˜์„ธ์š”. ${idNum}๋ฒˆ ${name}์ž…๋‹ˆ๋‹ค.`; } }; const student2 = { name : 'Tom', idNum : 25, say () { return `์•ˆ๋…•ํ•˜์„ธ์š”. ${idNum}๋ฒˆ ${name}์ž…๋‹ˆ๋‹ค.`; } }; ์œ„์™€ ๊ฐ™์ด ๋น„์Šทํ•œ ํ˜•ํƒœ์˜ ๊ฐ์ฒด๋ฅผ ์—ฌ๋Ÿฌ๊ฐœ ๋งŒ๋“ค์–ด์•ผํ•˜๋Š” ๊ฒฝ์šฐ ๊ฐ™์€ ์ฝ”๋“œ๋ฅผ ๋ฐ˜๋ณตํ•˜๋Š” ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ํ•จ์ˆ˜๋ฅผ ํ™œ์šฉํ•˜๋ฉด ๋”์šฑ ํŽธ๋ฆฌํ•˜๊ฒŒ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ƒ์„ฑ์ž ํ•จ์ˆ˜ ์ƒ์„ฑ Ru.. 2023. 3. 31.
[3/29-30] TIL_2, 3์ผ์ฐจ ์˜ค๋Š˜ ๊ณต๋ถ€ํ•œ ๋‚ด์šฉ ๐Ÿ“ 2์ผ์ฐจ์—์„œ๋Š” ์บก์Šคํ†ค ๋””์ž์ธ์˜ ๊ธฐ๋ณธ์ ์ธ ์„ค๊ณ„๋ฅผ ์ง„ํ–‰ํ•˜์˜€๋‹ค. ์ €๋ฒˆ ์ฐฝ์—…์บ ํ”„์—์„œ ๋‹ค๋ค˜์—ˆ๋˜ ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด์™€ ๊ทธ๊ฒƒ์— ์นด๋ฉ”๋ผ ๋ชจ๋“ˆ์„ ์—ฐ๊ฒฐํ•˜์—ฌ opencv์™€ tensorflow ๋“ฑ์„ ์ด์šฉํ•ด์„œ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•ด๋ณผ ์˜ˆ์ •์ด๋‹ค. ์‚ฌ์‹ค ํšŒ๋กœ์— ๋Œ€ํ•ด์„œ ์ง€์‹์ด ๋งค์šฐ ๋ถ€์กฑํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ถ€ํ’ˆ๋“ค์— ๋Œ€ํ•œ ์ „์••์ด๋‚˜ ์ „๋ ฅ๋Ÿ‰ ๋“ฑ ํ•„์ˆ˜์ ์ธ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ๊ณ ๋ ค์‚ฌํ•ญ์— ๋Œ€ํ•ด์„œ ํ™•์‹ ํ•˜์ง€ ๋ชปํ•˜๋Š” ์ƒํƒœ์ด๊ธฐ ๋•Œ๋ฌธ์— ๊ต์ˆ˜๋‹˜๊ป˜๋„ ๋„์›€์„ ๋ฐ›์•„์„œ ์™„์„ฑํ•  ์˜ˆ์ •์ด๋‹ค. ํƒœ์–‘๊ด‘ํŒจ๋„์„ ์ „๋ ฅ์›์œผ๋กœ ์‚ฌ์šฉํ•  ์˜ˆ์ •์ธ๋ฐ ๊ณผ์—ฐ ์–ด๋А์ •๋„์˜ ํšจ์œจ์„ ๊ฐ€์งˆ์ง€ ๊ถ๊ธˆํ•˜๋‹ค! ๋˜ํ•œ ์ €๋ฒˆ์— ์†์˜ ์ œ์Šค์ฒ˜ ์ธ์‹ ํ”„๋กœ๊ทธ๋žจ์€ ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด ํ™˜๊ฒฝ์—์„œ ์กฐ๊ธˆ ๋ฌด๋ฆฌ๊ฐ€ ์žˆ๋‹ค๊ณ  ๋А๊ปด์กŒ์—ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ด๋ฒˆ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ํ™˜๊ฒฝ์— ์–ด๋А ์ •๋„์˜ ์ตœ์ ํ™”๋ฅผ ํ•ด๋‚ผ ์ˆ˜ ์žˆ์„์ง€๊ฐ€ ๊ด€๊ฑด์ผ ๊ฒƒ ๊ฐ™๋‹ค. ์ด๋Ÿฐ ๊ฒƒ์— ๋ถ€๋”ชํžˆ๋Š” ์ ์ด.. 2023. 3. 31.
[23.3.28] TIL_1์ผ์ฐจ ์˜ค๋Š˜ ๊ณต๋ถ€ํ•œ ๋‚ด์šฉ ๐Ÿ“ 1. CS๊ณต๋ถ€_์šด์˜์ฒด์ œ ์ „๊ณต๊ณต๋ถ€ ๊ฒธ CS๊ณต๋ถ€๋ฅผ ์ง„ํ–‰ํ•˜์˜€๋‹ค. ์šด์˜์ฒด์ œ์˜ ์ •์˜์™€ ์œ ํ˜•, ๊ด€์ , ์ž…์ถœ๋ ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์— ๋Œ€ํ•ด์„œ ์‚ดํŽด๋ณด์•˜๊ณ  ๊ทธ ์ค‘ OS์˜ ์œ ํ˜•์€ ์ฑ…๊ณผ ๊ฐ•์˜์—์„œ ๋ถ„๋ฅ˜ํ•œ ๊ฒƒ์€ 9๊ฐ€์ง€์˜€๋‹ค. ๊ต‰์žฅํžˆ ๋งŽ์•˜์ง€๋งŒ ํŠน์ง•๋“ค์„ ๋ถ„๋ฅ˜ํ•ด๋ณด๊ณ  ์šฉ์–ด๋“ค์— ๋Œ€ํ•ด์„œ ์ต์ˆ™ํ•ด์ง€๋ ค๊ณ  ๋…ธ๋ ฅํ–ˆ๋‹ค. ์•„๋งˆ๋„ ์˜ˆ์ƒ์ปจ๋ฐ ์ปดํ“จํ„ฐ๋Š” ๊ทนํ•œ์˜ ํšจ์œจ์„ ๋Œ์–ด์˜ฌ๋ฆฌ๋Š” ๊ฒƒ์ด ๊ถ๊ทน์ ์ธ ๋ชฉํ‘œ์ด๊ธฐ ๋•Œ๋ฌธ์— ๊ทธ์— ์ดˆ์ ์„ ๋งž์ถ”์–ด์„œ ์ƒ๊ฐํ•˜๋ฉด ์ดํ•ด๊ฐ€ ์‰ฌ์šธ ๊ฒƒ ๊ฐ™๋‹ค! ๊ณต๋ถ€ํ•œ ๋‚ด์šฉ์€ ํฌ์ŠคํŒ…ํ•  ์˜ˆ์ •์ด๋‹ค. (๋งํฌ : ์ถ”ํ›„ ์ถ”๊ฐ€์˜ˆ์ •) 2. JS ๋ฌธ๋ฒ• JS์˜ ์ƒ์„ฑ์ž ํ•จ์ˆ˜์— ๋Œ€ํ•ด์„œ ๊ณต๋ถ€ํ•˜์˜€๋‹ค. (๋งํฌ : ์ถ”ํ›„ ์ถ”๊ฐ€์˜ˆ์ •) ์–ด๋ ค์› ๋˜ ๋‚ด์šฉ ๐Ÿ˜ž ๊ฐ„๋‹จํ•œ ์ด๋ก  ๋ฐ ๋ฌธ๋ฒ• ๊ณต๋ถ€์—ฌ์„œ ์–ด๋ ค์šด ๋ถ€๋ถ„์„ ๋งŒ๋‚˜์ง€ ๋ชปํ–ˆ๋‹คใ…  ๊ถ๊ธˆํ•œ ๋‚ด์šฉ๊ณผ ๋ถ€์กฑํ•œ ๋‚ด์šฉ ๐Ÿงฉ ํ˜„์žฌ ์ˆ˜๊ฐ• ์ค‘์ธ ๊ฐ•์˜๋ฅผ ์ตœ๋Œ€ํ•œ ๋น ๋ฅด๊ฒŒ .. 2023. 3. 29.
JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ• (23)_ ๊ฐ์ฒด + 2022.02.10 - [๐ŸŒŒ | WEB DEV/Vanilla JS] - JS_๊ธฐ๋ณธ๋ฌธ๋ฒ• (3)_๊ฐ์ฒด ๊ธฐ์กด์— ๋‹ค๋ฃจ์—ˆ๋˜ JS์˜ ๊ฐ์ฒด์— ๋Œ€ํ•ด์„œ ์กฐ๊ธˆ ๋” ์•Œ์•„๋ณด์ž! 1. ๊ฐ์ฒด ์ƒ์„ฑ & ์ ‘๊ทผ ์˜ˆ์ „ ํฌ์ŠคํŠธ์—์„œ ๋‹ค๋ฃจ์—ˆ๋˜ ๋Œ€๊ด„ํ˜ธ ํ‘œ๊ธฐ๋ฒ•์€ ๋‹ค์–‘ํ•œ ๋ฐฉ์‹์œผ๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. 1) ์‹๋ณ„์ž ๋ช…๋ช… ๊ทœ์น™์—์„œ ๋ฒ—์–ด๋‚œ ํ‚ค ์ด๋ฆ„์— ์ ‘๊ทผ const obj = { 'ab-1' : 100, 'c d' : 'Hello' }; console.log( obj['ab-1'], obj['c d'] ); >>> 100 >>> 'Hello' ์œ„์ฒ˜๋Ÿผ ๋ช…๋ช… ๊ทœ์น™์„ ์–ด๊ธด ๊ฒฝ์šฐ์—๋„ ' '(๋”ฐ์˜ดํ‘œ)๋ฅผ ์ด์šฉํ•˜์—ฌ ํ‚ค ์ด๋ฆ„์œผ๋กœ ์„ค์ •ํ•˜๊ณ  ์ด๋ฅผ ๋Œ€๊ด„ํ˜ธ ํ‘œ๊ธฐ๋ฒ•์œผ๋กœ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค. 2) ํ‘œํ˜„์‹์— ์ด์šฉ ์—ฐ์‚ฐ์„ ํ•˜์—ฌ ํ‚ค๊ฐ’์œผ๋กœ ์„ค์ •์„ ํ•  ๊ฒฝ์šฐ์—๋„ ๋Œ€๊ด„ํ˜ธ๋ฅผ ์ด์šฉํ•œ๋‹ค. let id.. 2023. 3. 26.
JS_๊ธฐ์ˆ  (2)_ IIFE(์ฆ‰์‹œ ์‹คํ–‰ ํ•จ์ˆ˜ ํ‘œํ˜„) JS์—์„œ ์‚ฌ์šฉํ•˜๋Š” IIFE์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์ž. ์˜ค๋Š˜๋‚ ์—๋Š” ์ž˜ ์‚ฌ์šฉํ•˜์ง€ ์•Š์ง€๋งŒ ๊ณผ๊ฑฐ์— ์‚ฌ์šฉํ–ˆ๋˜ ์ฝ”๋“œ๋ฅผ ๋ถ„์„ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์•Œ์•„๋ณด์ž! 1. IIFE๋ž€? ์ฆ‰์‹œ ์‹คํ–‰ ํ•จ์ˆ˜ ํ‘œํ˜„(Immediately Invoked Function Expression, IIFE)์€ ์ •์˜๋˜์ž๋งˆ์ž ์ฆ‰์‹œ ์‹คํ–‰๋˜๋Š” ํ•จ์ˆ˜๋ฅผ ๋งํ•œ๋‹ค. ๊ตฌ์กฐ (function() { ... }) (); Self-Executing Anonymous Function ์œผ๋กœ ๋ถˆ๋ฆฌ๋Š” ๋””์ž์ธ ํŒจํ„ด์ด๋ผ๊ณ  ํ•œ๋‹ค. ์—ฌ๊ธฐ์—์„œ๋Š” ๋‘ ๊ฐœ์˜ ๊ด„ํ˜ธ์— ์ฃผ๋ชฉ์„ ํ•ด์•ผํ•œ๋‹ค. ๋จผ์ €, ์ต๋ช…ํ•จ์ˆ˜๋ฅผ ๋‘˜๋Ÿฌ์‹ผ ๊ด„ํ˜ธ์ด๋‹ค. ์ด๋ฅผ ํ†ตํ•ด์„œ ์ „์—ญ Scope์˜ ๋ถˆํ•„์š”ํ•œ ๋ณ€์ˆ˜๋“ค์— ์˜ํ•œ ์˜ค์—ผ ๋ฐฉ์ง€์™€ IIFE ๋‚ด๋ถ€ ์•ˆ์œผ๋กœ ๋‹ค๋ฅธ ๋ณ€์ˆ˜๋“ค์ด ์ ‘๊ทผํ•˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ทธ ๋‹ค์Œ์œผ๋กœ๋Š” ํ›„๋ฏธ์— ์œ„์น˜ํ•˜๋Š” ์ฆ‰์‹œ ์‹คํ–‰ ํ•จ์ˆ˜๋ฅผ ์ƒ์„ฑํ•˜.. 2023. 3. 16.
JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ• (22)_ ๋งค๊ฐœ๋ณ€์ˆ˜ (๊ธฐ๋ณธ๊ฐ’, arguments, ๋‚˜๋จธ์ง€ ๋ณ€์ˆ˜, ์ด์ƒ์ ์ธ ํ•จ์ˆ˜?) JS ๋‹ค๋ฃจ๋Š” ํ•จ์ˆ˜์˜ ๋งค๊ฐœ๋ณ€์ˆ˜์— ๋Œ€ํ•ด์„œ ์‚ดํŽด๋ณด์ž. 1. ํ•จ์ˆ˜์˜ ๋งค๊ฐœ๋ณ€์ˆ˜ ๊ฐœ์ˆ˜๋ณด๋‹ค ๋งŽ์ด ๊ฐ’์„ ์ „๋‹ฌํ•œ ๊ฒฝ์šฐ ์˜ˆ์‹œ 1) ๋‘ ๊ฐœ์˜ ์ธ์ž๋ฅผ ๋ฐ›๋Š” ํ•จ์ˆ˜์ด๋‹ค. function sum(a, b){ return a + b; } console.log( sum(1, 2), sum(1, 2, 3), sum(1, 2, 3, 4) ); >>> 3 3 3 ์œ„์˜ ๊ฒฐ๊ณผ์ฒ˜๋Ÿผ JS์—์„œ๋Š” ๋‹ค๋ฅธ ์–ธ์–ด์™€ ๋‹ค๋ฅด๊ฒŒ ํ•จ์ˆ˜ ์ •์˜ ์‹œ ์„ค์ •ํ•œ ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ๊ฐœ์ˆ˜๋ณด๋‹ค ๋งŽ์ด ๊ฐ’์„ ์ „๋‹ฌํ•˜๋Š” ๊ฒฝ์šฐ ์ˆœ์„œ๋Œ€๋กœ ๊ฐ’์„ ๋ฐ›์€ ํ›„ ๋‚˜๋จธ์ง€๋Š” ๋ฌด์‹œํ•˜๋ฉฐ ์˜ค๋ฅ˜๋ฅผ ์ผ์œผํ‚ค์ง€ ์•Š๊ณ  ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. 2. ๊ธฐ๋ณธ๊ฐ’ ๊ธฐ๋ณธ๊ฐ’(default parameter)์€ ๋งค๊ฐœ๋ณ€์ˆ˜์— ๊ฐ’์ด ๋“ค์–ด์˜ค์ง€ ์•Š์•„๋„ ๊ธฐ๋ณธ์ ์œผ๋กœ ๊ฐ’์„ ์„ค์ •ํ•ด์ฃผ๋Š” ๊ฒƒ์ด๋‹ค. function sum(a = 0, b = 0){ return a + .. 2023. 3. 12.
JS_๊ธฐ์ˆ  (1)_ ์ปค๋ง(currying) JS์— ์กด์žฌํ•˜๋Š” ์ปค๋ง์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์ž. 1. ์ปค๋ง์ด๋ž€? ์ปค๋ง์€ ํ•จ์ˆ˜์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋Š” ๊ณ ๊ธ‰๊ธฐ์ˆ ๋กœ, JS ๋ฟ ์•„๋‹ˆ๋ผ ๋‹ค๋ฅธ ์–ธ์–ด์—์„œ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ์ˆ ์ด๋‹ค. ํ•„์š”ํ•œ ์ธ์ž๋ณด๋‹ค ์ ์€ ์ˆ˜์˜ ์ธ์ž๋ฅผ ๋ฐ›์œผ๋ฉด, ๋‚˜๋จธ์ง€ ์ธ์ž๋ฅผ ์ธ์ž๋กœ ๋ฐ›๋Š” ๋‹ค๋ฅธ ํ•จ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ์ฆ‰, ํ•œ ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ์ธ์ž๊ฐ€ ์•„์ง ๋œ ์ค€๋น„ ๋˜์—ˆ์„ ๊ฒฝ์šฐ ํ˜„์žฌ ์กด์žฌํ•˜๋Š” ์ธ์ž๋ฅผ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•ด์„œ ์ปค๋ง์œผ๋กœ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค. ์˜ˆ์‹œ 1) ์•„๋ž˜๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•œ ๊ฒฝ์šฐ์ด๋‹ค. function mulTwoTerm (a, b, c, d) { return (a + b) * (c + d); } const mulTwoTerm2 = (a, b, c, d) => (a + b) * (c + d); console.log( mulTwoTerm(1, 2, 3, 4.. 2023. 3. 11.