profile
๐ŸŽ The journey is the reward.
ํƒœ๊ทธ ๋ชฉ๋ก

[JavaScript] ์•Œ๊ณ ๋ฆฌ์ฆ˜ / ์ž์—ฐ์ˆ˜ ๋’ค์ง‘์–ด ๋ฐฐ์—ด๋กœ ๋งŒ๋“ค๊ธฐ

์ž์—ฐ์ˆ˜ ๋’ค์ง‘์–ด ๋ฐฐ์—ด๋กœ ๋งŒ๋“ค๊ธฐ ์ž์—ฐ์ˆ˜ n์„ ๋’ค์ง‘์–ด ๊ฐ ์ž๋ฆฌ ์ˆซ์ž๋ฅผ ์›์†Œ๋กœ ๊ฐ€์ง€๋Š” ๋ฐฐ์—ด ํ˜•ํƒœ๋กœ ๋ฆฌํ„ดํ•ด์ฃผ์„ธ์š”. ์˜ˆ๋ฅผ๋“ค์–ด n์ด 12345์ด๋ฉด [5,4,3,2,1]์„ ๋ฆฌํ„ดํ•ฉ๋‹ˆ๋‹ค. > ๋‚˜์˜ ์ฝ”๋“œ ์ฒ˜์Œ์—” answer์— push ํ•  ๋•Œ Number๋กœ ๋ฐ”๊ฟ”์ฃผ์ง€ ์•Š์•„์„œ ๋ชจ๋‘ ๋ฌธ์ž๋กœ

2022๋…„ 9์›” 30์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

[JavaScript] ์•Œ๊ณ ๋ฆฌ์ฆ˜ / ์ •์ˆ˜ ์ œ๊ณฑ๊ทผ ํŒ๋ณ„

์ž„์˜์˜ ์–‘์˜ ์ •์ˆ˜ n์— ๋Œ€ํ•ด, n์ด ์–ด๋–ค ์–‘์˜ ์ •์ˆ˜ x์˜ ์ œ๊ณฑ์ธ์ง€ ์•„๋‹Œ์ง€ ํŒ๋‹จํ•˜๋ ค ํ•ฉ๋‹ˆ๋‹ค. n์ด ์–‘์˜ ์ •์ˆ˜ x์˜ ์ œ๊ณฑ์ด๋ผ๋ฉด x+1์˜ ์ œ๊ณฑ์„ ๋ฆฌํ„ดํ•˜๊ณ , n์ด ์–‘์˜ ์ •์ˆ˜ x์˜ ์ œ๊ณฑ์ด ์•„๋‹ˆ๋ผ๋ฉด -1์„ ๋ฆฌํ„ดํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•˜์„ธ์š”.์˜ค๋‹ต์œ„์˜ ๊ฒฐ๊ณผ๋Š” ์•„๋ฌด๋ฆฌ ํ•ด๋„ -1

2022๋…„ 9์›” 30์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

git log ํ›„ ํ™”๋ฉด์„ ๋‚˜๊ฐ€๋ ค๋ฉด?

ํ„ฐ๋ฏธ๋„์—์„œ ์ปค๋ฐ‹ ๋กœ๊ทธ๋ฅผ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด git log๋กœ ๋‚ด์—ญ์„ ํ™•์ธ ํ›„,์ปจํŠธ๋กค ์—˜ ๋˜๋Š” ์ปจํŠธ๋กค ์”จ๋ฅผ ๋ˆŒ๋Ÿฌ๋„ ์ข…๋ฃŒ๋˜์ง€ ์•Š๋Š”๋‹ค. ์ด๋•Œ ๋‚ด์—ญ์„ ํ™•์ธํ–ˆ๋‹ค๋ฉด Qํ‚ค๋ฅผ ๋ˆŒ๋Ÿฌ ๋กœ๊ทธ ํ™”๋ฉด์„ ๋น ์ ธ ๋‚˜์˜ฌ์ˆ˜ ์žˆ๋‹ค ^^

2022๋…„ 9์›” 29์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

Visual Studio Code ์‹œ์ž‘ํ•˜๊ธฐ

Visual Studio Code๋Š” ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ์—์„œ ๊ฐœ๋ฐœ๋œ Code Editor์ด๋‹ค ์„ค์น˜ : https://code.visualstudio.com/Visual Studio Code๋ฅผ ์„ค์น˜ํ•˜๊ณ  ๋ณธ๊ฒฉ์ ์œผ๋กœ ์ž‘์—…ํ•˜๊ธฐ ์ „ ๋ช‡๊ฐ€์ง€ Extension์„ ์„ธํŒ…์„ ํ•ด์ฃผ๋ฉด ํ›จ

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

JS V8 Engine & Node.js

JS V8 Engine# Javascript ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ๊ฐ์ฒด(object) ๊ธฐ๋ฐ˜์˜ ์Šคํฌ๋ฆฝํŠธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์ด๋‹ค. **HTML๋กœ ์›น์˜ ๋‚ด์šฉ์„ ์ž‘์„ฑํ•˜๊ณ , CSS๋กœ ์›น์˜ ์‹œ๊ฐ์ ์ธ ๋ถ€๋ถ„์„ ๋””์ž์ธํ•˜๋ฉฐ, ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ๋Š” ์›น์˜ ๊ธฐ๋Šฅ ๋™์ž‘์„ ๊ตฌํ˜„ํ•œ๋‹ค. **

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

webPack

Webpack์€ ์˜์กด ๊ด€๊ณ„์— ์žˆ๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ, CSS, ์ด๋ฏธ์ง€ ๋“ฑ์˜ ๋ฆฌ์†Œ์Šค๋“ค์„ ํ•˜๋‚˜ ๋˜๋Š” ์—ฌ๋Ÿฌ๊ฐœ์˜ ํŒŒ์ผ๋กœ ๋ฒˆ๋“ค๋งํ•˜๋Š” ๋ชจ๋“ˆ ๋ฒˆ๋“ค๋Ÿฌ๋‹ค. Webpack์„ ์‚ฌ์šฉํ•˜๋ฉด ์˜์กด ๋ชจ๋“ˆ์ด ํ•˜๋‚˜์˜ ํŒŒ์ผ๋กœ ๋ฒˆ๋“ค๋ง๋˜๋ฏ€๋กœ ๋ณ„๋„์˜ ๋ชจ๋“ˆ ๋กœ๋”๊ฐ€ ํ•„์š”์—†๋‹ค.

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

Virtual DOM

Virtual DOM

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

TS Generic

any vs unknownany ํƒ€์ž…์ด๋ž€?โ€™์–ด๋– ํ•œ ๊ฒƒ์ด๋“ ์ง€, ๋ˆ„๊ตฌ๋“ ์ง€โ€™ ๋ผ๋Š” ๋œป์œผ๋กœ, ์–ด๋– ํ•œ ํƒ€์ž…์ด ์ž…๋ ฅ๋˜๋”๋ผ๋„ ์ „๋ถ€ ํ—ˆ์šฉํ•˜๋Š” ํƒ€์ž…์ด๋‹ค. ์š”์†Œ์— any ํƒ€์ž…์„ ๋ถ€์—ฌํ•  ๊ฒฝ์šฐ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๋‚˜ ๋งˆ์ฐฌ๊ฐ€์ง€๊ฐ€ ๋œ๋‹ค.unknown ํƒ€์ž…์ด๋ž€?โ€™์•Œ ์ˆ˜ ์—†๋‹ค, ๋ชจ๋ฅธ๋‹คโ€™ ๋ผ

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

null & undefined

# null ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—์„œ null์€ ๋ณ€์ˆ˜์— ๊ฐ’์ด ์—†๋‹ค๋Š” ๊ฒƒ์„ ์˜๋„์ ์œผ๋กœ ๋ช…์‹œ(์˜๋„์  ๋ถ€์žฌ international absence)ํ• ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค. ๋ณ€์ˆ˜์— null์„ ํ• ๋‹นํ•˜๋Š” ๊ฒƒ์€ ๋ณ€์ˆ˜๊ฐ€ ์ด์ „์— ์ฐธ์กฐํ•˜๋˜ ๊ฐ’์„ ๋”์ด์ƒ ์ฐธ์กฐํ•˜์ง€ ์•Š๊ฒ ๋‹ค๋Š” ์˜๋ฏธ์ด๋‹ค. # undefi

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

let, const, var

JavaScript์—์„œ ๋ณ€์ˆ˜ ์„ ์–ธ ๋ฐฉ์‹์€ ํฌ๊ฒŒ `var`, `let`, `const` ์„ธ๊ฐ€์ง€๋กœ ๋‚˜๋‰œ๋‹ค. # var var๋Š” ๋ณ€์ˆ˜ ์„ ์–ธ์— ์žˆ์–ด์„œ ํฐ ๋‹จ์ ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ๋จผ์ € ์„ ์–ธํ•œ ๋ณ€์ˆ˜๊ฐ€ ์žˆ์–ด๋„ ๋‹ค์‹œ ๋™์ผํ•œ ๋ณ€์ˆ˜๋ช…์œผ๋กœ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ• ์ˆ˜ ์žˆ๋‹ค. ์ด๋ ‡๊ฒŒ ๋˜๋ฉด ์ด์ „์— ์„ ์–ธํ•œ

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

ES6์˜ ํŠน์ง•

ECMAScript 2015๋Š” JavaScript์˜ ๋‘ ๋ฒˆ์งธ ์ฃผ์š” ๊ฐœ์ •ํŒ์ด๋‹ค. ECMAScript 2015๋Š” ES6 ๋ฐ ECMAScript 6์œผ๋กœ๋„ ์•Œ๋ ค์ ธ ์žˆ๋‹ค.

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

[JavaScript] ํ• ๋‹น, ๋™๋“ฑ, ๋น„๊ต ์—ฐ์‚ฐ์ž

=, ==, === ์ฐจ์ด์ ์„ ๋น„๊ตํ•ด๋ณด์ž ## ํ• ๋‹น์—ฐ์‚ฐ์ž (=) ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ `=` ๋Š” ์ผ๋ฐ˜ ์ˆ˜ํ•™์—์„œ์˜ ๊ฐ™๋‹ค๋ผ๋Š” ์˜๋ฏธ๊ฐ€ ์•„๋‹ˆ๋ผ ๋ฐ์ดํ„ฐ๋ฅผ ํ• ๋‹นํ•ด์ค€๋‹ค๋Š” ์˜๋ฏธ์ด๋‹ค.

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

CI/CD

CI/CD

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

https vs http

https vs http

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

Domain, DNS, Hosting

Domain, DNS, Hosting # Domain ๋„๋ฉ”์ธ ๋„ค์ž„์€ ๋„“์€ ์˜๋ฏธ๋กœ๋Š” ๋„คํŠธ์›Œํฌ์ƒ์—์„œ ์ปดํ“จํ„ฐ๋ฅผ ์‹๋ณ„ํ•˜๋Š” ํ˜ธ์ŠคํŠธ๋ช…์„ ๊ฐ€๋ฆฌํ‚ค๋ฉฐ, ์ข์€ ์˜๋ฏธ์—์„œ๋Š” ๋„๋ฉ”์ธ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์—๊ฒŒ์„œ ๋“ฑ๋ก๋œ ์ด๋ฆ„์„ ์˜๋ฏธํ•œ๋‹ค.

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

reduce

reduce

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

Memoization

memo๋Š” react์—์„œ ์ œ๊ณตํ•˜๊ณ  ์žˆ๋Š” ๊ธฐ๋Šฅ์œผ๋กœ ๋ถˆํ•„์š”ํ•œ ๋ Œ๋”๋ง์„ ์ค„์—ฌ์ค€๋‹ค. ์ด๋ ‡๊ฒŒ memo๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ state์นด์šดํŠธ๋ฅผ ํด๋ฆญํ•˜๋ฉด ํ”„๋ฆฌ์  ํ„ฐ๋Š” ๋ Œ๋”๋ง๋„ ๋˜์ง€์•Š๊ณ  ์ฝ˜์†”์—๋„ ์•ˆ์ฐํžˆ๋ฉฐ ๋ฆฌ์•กํŠธํˆด์—๋„ ๋ณด์ด์ง€ ์•Š๋Š”๋‹ค. ์ž์‹์ปดํฌ๋„ŒํŠธ๋Š” memo๋ฅผ ์‚ฌ์šฉํ•ด ๋ถˆํ•„์š”ํ•œ ๋ฆฌ๋ Œ๋”๊ฐ€ ๋”์ด์ƒ ์ผ์–ด๋‚˜

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

observable

observable

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

token, XSS, CSRF

token, XSS, CSRF

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

Callback & Promise

์ฝœ๋ฐฑํ•จ์ˆ˜๋ž€ ํ•จ์ˆ˜์˜ ์ธ์ž๋กœ ๋“ค์–ด๊ฐ€๋Š” ํ•จ์ˆ˜์ด๋‹ค.์ด๋Ÿฌํ•œ ์ฝœ๋ฐฑํ•จ์ˆ˜๋Š” ํŠน์ •ํ•œ API ์š”์ฒญ์ด ๋๋‚œ ๋’ค, ๊ทธ ๊ฒฐ๊ณผ ๊ฐ’์„ ๊ฐ€์ง€๊ณ  ๋‹ค๋ฅธ ์š”์ฒญ์„ ์‹คํ–‰์‹œ์ผœ์•ผ ํ• ๋•Œ callback ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์š”์ฒญ์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค. async/await๋‚˜ promise ๋ฌธ๋ฒ•์ด ์กด์žฌํ•˜๊ธฐ ์ „์— callb

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