profile
Beyond Frontend Engineer ๐Ÿš€
post-thumbnail

[React] Flux ํŒจํ„ด์ด๋ž€? ๐Ÿค”

MVC ํŒจํ„ด์€ Model์— ๋ฐ์ดํ„ฐ๋ฅผ ๋‘๊ณ , Controller๋ฅผ ์ด์šฉํ•ด Model ๋ฐ์ดํ„ฐ ์ˆ˜์ • ๋ฐ ์ ‘๊ทผ, View๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค. Model - View ์˜์กด์„ฑ (์–‘๋ฐฉํ–ฅ ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ) ๋†’์Œ์ด๋Ÿฌํ•œ ๊ด€๊ณ„๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ทœ๋ชจ๊ฐ€ ๋Š˜์–ด๊ฐ์— ๋”ฐ๋ผ Mod

2022๋…„ 3์›” 21์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[๋ฐฑ์ค€/์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ(JavaScript)] 1931๋ฒˆ: ํšŒ์˜์‹ค ๋ฐฐ์ •

https://www.acmicpc.net/problem/1931ํ˜„์žฌ ํšŒ์˜์˜ ๋๋‚˜๋Š” ์‹œ๊ฐ„์„ ๊ธฐ์ค€์œผ๋กœ ๋‹ค์Œ ํšŒ์˜ ์‹œ์ž‘ ์‹œ๊ฐ„์„ ๊ฒฐ์ •ํ•˜๋ฉด ์ตœ์ ์˜ ๋ฐฉ๋ฒ•์ด ๋„์ถœ๋ฉ๋‹ˆ๋‹ค.

2022๋…„ 3์›” 17์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[๋ฐฑ์ค€/์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ(JavaScript)] 2839๋ฒˆ: ์„คํƒ•๋ฐฐ๋‹ฌ

https://www.acmicpc.net/problem/2839์ „ํ˜•์ ์ธ ๊ทธ๋ฆฌ๋”” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.๋จผ์ € ํฐ ๋ฌด๊ฒŒ๋กœ ๋‚˜๋ˆ„๋Š” ๊ฒƒ์ด ์ด๋“์ด๊ธฐ ๋•Œ๋ฌธ์— 5 ๋กœ ๋‚˜๋ˆ„๊ณ  ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€์ง€ ์•Š์œผ๋ฉด, 3 ์„ ๋บ๋‹ˆ๋‹ค!๊ทธ๋ฆฌ๊ณ  ์žฌ๊ท€๋ฅผ ํ†ตํ•ด ํ•ด๋‹น ๋กœ์ง์„ ๋ฐ˜๋ณตํ•ฉ๋‹ˆ๋‹ค.

2022๋…„ 3์›” 16์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

JavaScript, Node.js ๋กœ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ ํ’€๊ธฐ โœ๏ธ / ๋ฐฑ์ค€

Python, C++ ๋กœ ๋ฌธ์ œ๋ฅผ ํ’€ ๋•Œ๋Š” ๋ฐฑ์ค€์„ ์ด์šฉํ–ˆ๋Š”๋ฐํ˜„์žฌ๋Š” JavaScript๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ธํ’‹์„ ์‹ ๊ฒฝ ์•ˆ์จ๋„ ๋˜๋Š” ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค๋ฅผ ์ด์šฉํ–ˆ์Šต๋‹ˆ๋‹ค..๐Ÿฅฒ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ข…๋ฅ˜ ๋ณ„๋กœ ์นดํ…Œ๊ณ ๋ฆฌ๊ฐ€ ์กด์žฌํ•˜๋Š” ๋ฐฑ์ค€์„ ๋‹ค์‹œ ์ด์šฉํ•˜๋ ค๊ณ  Node.js ํ™˜๊ฒฝ์œผ๋กœ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ‘ธ๋Š”๋ฒ•์€ ์ •๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค

2022๋…„ 3์›” 16์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[JavaScript] Number, ParseInt ์ฐจ์ด ๐Ÿค”

์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ๋ฅผ ํ’€๋‹ค๊ฐ€ ์Šค์Šค๋กœ Number, ParseInt ๋ฅผ ํ˜ผ์šฉํ•˜๊ณ  ์žˆ๋Š” ๋ชจ์Šต์„ ๋ฐœ๊ฒฌํ•ด์„œ ๋ฌธ๋“ ์ฐจ์ด์ ์ด ๊ถ๊ธˆํ•ด์กŒ์Šต๋‹ˆ๋‹ค. ๐Ÿค” Number ParseInt

2022๋…„ 3์›” 15์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ(JavaScript)] ํ”„๋ Œ์ฆˆ4๋ธ”๋ก / ๊ตฌํ˜„

https://programmers.co.kr/learn/courses/30/lessons/17679๊ตฌํ˜„ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.์ด์ค‘ for ๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐฐ์—ด์„ ํƒ์ƒ‰ํ•˜๊ณ ์‚ญ์ œ๋  ๋ธ”๋ก์„ 0์œผ๋กœ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.๋นˆ ๋ธ”๋ก(0)์„ ์œ„์—์„œ ์•„๋ž˜๋กœ ๋‹น๊ธฐ๋Š” ๊ตฌํ˜„์ด ๊ด€๊ฑด์ธ๋ฐ์•„๋ž˜์„œ๋ถ€ํ„ฐ ํƒ์ƒ‰์„

2022๋…„ 3์›” 14์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ(JavaScript)] ์‹ ๊ณ  ๊ฒฐ๊ณผ ๋ฐ›๊ธฐ

https://programmers.co.kr/learn/courses/30/lessons/92334์‹ ๊ณ ๋‹นํ•œ ์‚ฌ๋žŒ: id, ์‹ ๊ณ ํ•œ ์‚ฌ๋žŒ๋“ค: value ๋กœ ๊ฐ–๊ณ  ์žˆ๋Š” Map์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.์ค‘๋ณต๋˜๋Š” ์‹ ๊ณ ํ•œ user_id๋ฅผ ์ œ๊ฑฐํ•˜๊ธฐ ์œ„ํ•ด์„œ Set์„ ์ด์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.

2022๋…„ 3์›” 11์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[CS] MVC, MVP, MVVM ํŒจํ„ด

๋‹ค์–‘ํ•œ ํŒจํ„ด ๋“ค์ค‘ ๊ฐ€์žฅ ๋Œ€ํ‘œ์ ์ธ 3๊ฐ€์ง€์˜ ํŒจํ„ด์ž…๋‹ˆ๋‹ค. ์šฉ์–ด ์ •๋ฆฌ M (Model) V (View / ViewModel) C (Controller) MVC MVC ํŒจํ„ด์€ MVP MVVM

2022๋…„ 3์›” 8์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ(JavaScript)] ํฌ๋ ˆ์ธ ์ธํ˜•๋ฝ‘๊ธฐ / ์Šคํƒ

https://programmers.co.kr/learn/courses/30/lessons/640612์ฐจ์› ๋ฐฐ์—ด์—์„œ ์„ธ๋กœ ๊ฐ’์„ ์–ด๋–ป๊ฒŒ ์ ‘๊ทผํ• ๊นŒ๋ฅผ ๋น ๋ฅด๊ฒŒ ์ƒ๊ฐํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.๊ทธ ๋‹ค์Œ์€ ์Šคํƒ์„ ์ด์šฉํ•˜์—ฌ ๋™์ผํ•œ 2๊ฐœ์˜ ๊ฐ’์ด ์กด์žฌํ•˜๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

2022๋…„ 3์›” 7์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[JavaScript] ํด๋ฆฐ์ฝ”๋“œ / eqeq ์ค„์ด๊ธฐ

JavaScript์—์„œ == ๋Š” ์Šค์Šค๋กœ Type Casting ์„ ๋ฐœ์ƒ์‹œ์ผœ์œ„์™€ ๊ฐ™์ด ๊ฐ’์˜ ๋น„๊ต์—์„œ ํ˜ผ๋ž€์„ ์•ผ๊ธฐ ํ•  ์ˆ˜ ์žˆ๋‹ค.๋”ฐ๋ผ์„œ === ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์—„๊ฒฉํ•œ ๋น„๊ต๋ฅผ ์ง„ํ–‰ํ•ด์•ผํ•œ๋‹ค.๋˜๋„๋ก === ๋ฅผ ์“ฐ๋ฉด์„œ ํ˜• ๋ณ€ํ™˜์€ Number(), String() ๋“ฑ์œผ๋กœ ๋ช…์‹œ์ ์œผ๋กœ ์ง„ํ–‰

2022๋…„ 2์›” 1์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[JavaScript] ํด๋ฆฐ์ฝ”๋“œ / undefined & null

์„ ์–ธ์€ ํ–ˆ์ง€๋งŒ ํ• ๋‹น์€ ์•ˆ๋œ ์ƒํƒœ๊ฐ’์œผ๋กœ ๋ดค์„ ๋•Œ NaN์„ ์˜๋ฏธํ•œ๋‹ค.๋ณ€์ˆ˜๊ฐ€ ๋น„์–ด์žˆ๋‹ค๋Š” ๋ช…์‹œ์ ์ธ ์ƒํƒœ๊ฐ’์œผ๋กœ ๋ดค์„ ๋•Œ 0์„ ์˜๋ฏธํ•œ๋‹ค.undefined & null๋Š” ๋น„์Šทํ•œ ๋“ฏํ•˜๋ฉด์„œ ๋งค์šฐ ๋‹ค๋ฅด๋‹ค! ๋”ฐ๋ผ์„œ 2๊ฐœ์˜ ๊ฐ’์„ ํ™œ์šฉํ•œ ์ฝ”๋“œ์—์„œ๋Š” 2๊ฐœ์˜ ๊ฐ’ ์ค‘ ํ•˜๋‚˜์˜ ๊ฐ’๋งŒ ์“ฐ๋Š” conven

2022๋…„ 2์›” 1์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[JavaScript] ํด๋ฆฐ์ฝ”๋“œ / ํƒ€์ž…๊ฒ€์‚ฌ, ํ˜•๋ณ€ํ™˜

Primitive (์›์‹œ๊ฐ’)Reference (Object)Reference ๋Š” ํƒ€์ž…๊ฒ€์‚ฌ(๊ฒฐ๊ตญ Object)๊ฐ€ ๊นŒ๋‹ค๋กญ๋‹ค!JavaScript๋Š” ๋™์ ์ธ ํƒ€์ž… ๋”ฐ๋ผ์„œ ํƒ€์ž…๊ฒ€์‚ฌ๋Š” ํ•ญ์ƒ Object๋ฅผ ์—ผ๋‘ํ•ด๋‘๊ณ  ์ฃผ์˜ํ•ด์•ผํ•œ๋‹ค!

2022๋…„ 2์›” 1์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[Next.js] ํ”„๋กœ์ ํŠธ ์‹œ์ž‘ํ•˜๊ธฐ / TypeScript + ESLint + Prettier

Next.js ํ”„๋กœ์ ํŠธ ์‹œ์ž‘์„ ์œ„ํ•œ ๋ฐฉ๋ฒ•์„ ์ •๋ฆฌํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค. โœ๏ธ Next.js + Typescript + Prettier + Eslint ๊ตฌ์„ฑ Next.js + TypeScript cra ์™€ ๊ฐ™์€ ํ•„์š”ํ•œ Web Prettier

2022๋…„ 1์›” 26์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[JavaScript] ํด๋ฆฐ์ฝ”๋“œ 2๊ฐ•

var ๋Š” function scopelet & const ๋Š” block scope๊ฐ๊ฐ์˜ ์Šค์ฝ”ํ”„๋กœ ์ธํ•œ ์˜ค์—ผ์„ ๋ฐฉ์ง€ํ•ด์•ผ ํ•œ๋‹ค.์ „์—ญ์€ ํ•ด๋‹น ํ™˜๊ฒฝ์—์„œ ์ตœ์ƒ์œ„๋ฅผ ์˜๋ฏธํ•œ๋‹ค.๋ธŒ๋ผ์šฐ์ € => Window , NodeJS => Global์ „์—ญ ๊ณต๊ฐ„์„ ๋”๋Ÿฝํžˆ๊ฒŒ๋˜๋ฉด ์–ด๋””์„œ๋‚˜ ์ ‘๊ทผ์ด ๊ฐ€๋Šฅํ•˜

2022๋…„ 1์›” 23์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[React] forwardRef ๋ž€? ๐Ÿค”

์ƒ์œ„ ์ปดํฌ๋„ŒํŠธ์—์„œ Props ๋กœ DOM์— ์ ‘๊ทผ์ด ๊ฐ€๋Šฅํ•œ ref ๊ฐ์ฒด๋ฅผ ํ•˜์œ„ ์ปดํฌ๋„ŒํŠธ์— ์ „๋‹ฌํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š”forwardRef๋ฅผ ์ด์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ”ฅref ๋ฅผ ์ „๋‹ฌ๋ฐ›์„ ํ•˜์œ„ ์ปดํฌ๋„ŒํŠธ๋ฅผ forwardRef ๋กœ ๊ฐ์‹ธ์ค๋‹ˆ๋‹ค. ๐Ÿ‘forwardRef ๋ฅผ ์ด์šฉํ•˜๋ฉด์„œ ์ต๋ช… ํ•จ์ˆ˜๋ฅผ ๋„˜

2022๋…„ 1์›” 18์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[JavaScript] ํด๋ฆฐ์ฝ”๋“œ 1๊ฐ•

์ž์‹ ๋งŒ์˜ ์ฝ”๋“œ ๊ตฌ์กฐ ๋ฐ ์„ค๊ณ„์— ๊ฐ‡ํžˆ์ง€ ๋ง๊ณ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ์ฝ”๋“œ ๋ฐ ๋‹ค์–‘ํ•œ ์ฝ”๋“œ๋ฅผ ์ ‘ํ•ด์„œ ์•ˆ๋ชฉ์„ ๋„“ํžˆ์ž!๋Ÿฐํƒ€์ž„ ์ค‘์ธ ํ”„๋กœ๊ทธ๋žจ์˜ ๋‚ด์šฉ์ด ๋ฐ”๋€๋‹ค.JS ๋Š” ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ์–ด๋””์—๋„ ์žˆ๋‹ค์ข‹์€ ์ฝ”๋“œ ์ž‘์„ฑ์„ ์œ„ํ•œ ์˜์‹์ ์ธ ์ˆ˜๋ จ ๐Ÿ”ฅ

2022๋…„ 1์›” 17์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[JavaScript] ?? ์—ฐ์‚ฐ์ž / Nullish Coalescing

?? ์—ฐ์‚ฐ์ž / Nullish Coalescing โ—๏ธ|| ์—ฐ์‚ฐ์ž์˜ ๋ฌธ์ œ์  >JavaScript ๋‚ด๋ถ€์—์„œ || ์—ฐ์‚ฐ์ž (Logical OR)๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด null, undefined ๊ฐ์ง€๋ฅผ ๋”ฐ๋กœ ํ•˜์ง€ ๋ชป ํ•ฉ๋‹ˆ๋‹ค.

2021๋…„ 12์›” 28์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[TypeScript] ์œ ํ‹ธ๋ฆฌํ‹ฐ ํƒ€์ž… / Partial, Pick, Omit

์œ ํ‹ธ๋ฆฌํ‹ฐ ํƒ€์ž… > - ๊ณตํ†ต๋œ ํƒ€์ž…์˜ ์‚ฌ์šฉ์„ ์šฉ์ดํ•˜๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•œ ์ œ๋„ค๋ฆญ ์ธํ„ฐํŽ˜์ด์Šค์ž…๋‹ˆ๋‹ค. ๊ผญ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•„๋„ ๋˜์ง€๋งŒ, ์‚ฌ์šฉํ•˜๋ฉด ํŽธ์˜์„ฑ์ด ์˜ฌ๋ผ๊ฐ‘๋‹ˆ๋‹ค. ๐Ÿ‘ Partial ์ œ๋„ค๋ฆญ T ์˜ ๋ชจ๋“  ํ”„๋กœํผํ‹ฐ๋ฅผ ์„ ํƒ์ (optional)๋กœ ๋งŒ๋“œ๋Š” ํƒ€์ž…์„ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค. Pick O

2021๋…„ 12์›” 20์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[JavaScript] TDZ(Temporal Dead Zone) ์ด๋ž€?

TDZ๋ฅผ ์ดํ•ดํ•˜๋ ค๋ฉด ํ˜ธ์ด์ŠคํŒ…์— ๋Œ€ํ•œ ์ดํ•ด๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ฃผ์–ด์ง„ ์„ ์–ธ๋“ค์ด ํ•ด๋‹น scope์— ์ตœ์ƒ๋‹จ์œผ๋กœ ์ด๋™ํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.์œ„ ์ฝ”๋“œ๋ฅผ ๋ณด๋ฉด ์„ ์–ธ๊ณผ ์ดˆ๊ธฐํ™”๋˜์ง€ ์•Š์€ ๋ณ€์ˆ˜๋ฅผ ์ ‘๊ทผํ•˜๋ ค ํ•  ๋•Œ,ํ˜ธ์ด์ŠคํŒ…์œผ๋กœ ์ธํ•ดvar ๋ณ€์ˆ˜๋Š” undefined๋กœ ์ถœ๋ ฅ์ด ๋˜์ง€๋งŒlet, const

2021๋…„ 12์›” 13์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
post-thumbnail

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ(JavaScript)] ๋””์Šคํฌ ์ปจํŠธ๋กค๋Ÿฌ / ๊ทธ๋ฆฌ๋””

https://programmers.co.kr/learn/courses/30/lessons/42627์‹œ์ž‘ ์‹œ๊ฐ„์ด ๊ฐ€์žฅ ๋น ๋ฅธ ๋”ฐ๋ฅธ ์ˆœ์œผ๋กœ ์ •๋ ฌ ํ•˜๋ฉด ๋ฌธ์ œ ์„ค๋ช…๊ณผ ๊ฐ™์ด ์•ˆ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.๋”ฐ๋ผ์„œ ์ฒ˜์Œ์—๋Š” ์‹œ์ž‘ ์‹œ๊ฐ„์œผ๋กœ ์ •๋ ฌ์„ ํ•˜๊ณ ํƒ์ƒ‰ํ•˜๊ณ  ์žˆ๋Š” ์ข…๋ฃŒ ์‹œ์  ์ด์ „

2021๋…„ 12์›” 13์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€