๋ฐ˜์‘ํ˜•

JS๊ณต๋ถ€ 4

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/JS] ํŠน์ • ๋ฌธ์ž ์ œ๊ฑฐํ•˜๊ธฐ

Problem Description ๋ฌธ์ž์—ด my_string๊ณผ ๋ฌธ์ž letter์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. my_string์—์„œ letter๋ฅผ ์ œ๊ฑฐํ•œ ๋ฌธ์ž์—ด์„ returnํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”. Restrictions 1 ≤ my_string์˜ ๊ธธ์ด ≤ 100 letter์€ ๊ธธ์ด๊ฐ€ 1์ธ ์˜๋ฌธ์ž์ž…๋‹ˆ๋‹ค. my_string๊ณผ letter์€ ์•ŒํŒŒ๋ฒณ ๋Œ€์†Œ๋ฌธ์ž๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. ๋Œ€๋ฌธ์ž์™€ ์†Œ๋ฌธ์ž๋ฅผ ๊ตฌ๋ถ„ํ•ฉ๋‹ˆ๋‹ค. Input/Output Example ์ž…์ถœ๋ ฅ ์˜ˆ #1 "abcdef" ์—์„œ "f"๋ฅผ ์ œ๊ฑฐํ•œ "abcde"๋ฅผ returnํ•ฉ๋‹ˆ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ #2 "BCBdbe" ์—์„œ "B"๋ฅผ ๋ชจ๋‘ ์ œ๊ฑฐํ•œ "Cdbe"๋ฅผ returnํ•ฉ๋‹ˆ๋‹ค. My solution function solution(my_string..

[๋ชจ๋˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ Deep Dive] 15์žฅ let, const ํ‚ค์›Œ๋“œ์™€ ๋ธ”๋ก ๋ ˆ๋ฒจ ์Šค์ฝ”ํ”„๋ž€?

15.1 var ํ‚ค์›Œ๋“œ๋กœ ์„ ์–ธํ•œ ๋ณ€์ˆ˜์˜ ๋ฌธ์ œ์  15.1.1 ๋ณ€์ˆ˜ ์ค‘๋ณต ์„ ์–ธ ํ—ˆ์šฉ var ํ‚ค์›Œ๋“œ๋กœ ์„ ์–ธํ•œ ๋ณ€์ˆ˜๋Š” ์ค‘๋ณต ์„ ์–ธ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. 15.1.2 ํ•จ์ˆ˜ ๋ ˆ๋ฒจ ์Šค์ฝ”ํ”„ var ํ‚ค์›Œ๋“œ๋กœ ์„ ์–ธํ•œ ๋ณ€์ˆ˜๋Š” ์˜ค๋กœ์ง€ ํ•จ์ˆ˜์˜ ์ฝ”๋“œ ๋ธ”๋ก๋งŒ์„ ์ง€์—ญ ์Šค์ฝ”ํ”„๋กœ ์ธ์ •ํ•ฉ๋‹ˆ๋‹ค. ํ•จ์ˆ˜ ๋ ˆ๋ฒจ ์Šค์ฝ”ํ”„๋Š” ์ „์—ญ ๋ณ€์ˆ˜๋ฅผ ๋‚จ๋ฐœํ•  ๊ฐ€๋Šฅ์„ฑ์„ ๋†’์ด๊ณ  ์ „์—ญ ๋ณ€์ˆ˜๊ฐ€ ์ค‘๋ณต ์„ ์–ธ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. 15.1.3 ๋ณ€์ˆ˜ ํ˜ธ์ด์ŠคํŒ… var ํ‚ค์›Œ๋“œ ๋ณ€์ˆ˜ ์„ ์–ธ ์‹œ ๋ณ€์ˆ˜ ํ˜ธ์ด์ŠคํŒ…์— ์˜ํ•ด ๋ณ€์ˆ˜ ์„ ์–ธ๋ฌธ์ด ์Šค์ฝ”ํ”„์˜ ์„ ๋‘๋กœ ๋Œ์–ด ์˜ฌ๋ ค์ง„ ๊ฒƒ์ฒ˜๋Ÿผ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค. // ์ด ์‹œ์ ์—๋Š” ๋ณ€์ˆ˜ ํ˜ธ์ด์ŠคํŒ…์— ์˜ํ•ด ์ด๋ฏธ foo ๋ณ€์ˆ˜๊ฐ€ ์„ ์–ธ๋จ (1.์„ ์–ธ ๋‹จ๊ณ„) // ๋ณ€์ˆ˜ foo๋Š” undefined๋กœ ์ฒ˜๊ธฐํ™” ๋จ (2. ์ดˆ๊ธฐํ™” ๋‹จ๊ณ„) console.log(foo); // undefined // ๋ณ€..

[๋ชจ๋˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ Deep Dive] 14์žฅ ์ „์—ญ ๋ณ€์ˆ˜์˜ ๋ฌธ์ œ์ 

14.1 ๋ณ€์ˆ˜์˜ ์ƒ๋ช…์ฃผ๊ธฐ 14.1.1 ์ง€์—ญ ๋ณ€์ˆ˜์˜ ์ƒ๋ช…์ฃผ๊ธฐ ์ง€์—ญ ๋ณ€์ˆ˜์˜ ์ƒ๋ช… ์ฃผ๊ธฐ๋Š” ํ•จ์ˆ˜์˜ ์ƒ๋ช… ์ฃผ๊ธฐ์™€ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค. function foo() { var x = 'local' // ๋ณ€์ˆ˜ x ์ƒ์„ฑ, ๋ณ€์ˆ˜ x์— ๊ฐ’ ํ• ๋‹น console.loog(x) return x // ๋ณ€์ˆ˜ ์†Œ๋ฉธ } foo(); console.log(x); // x is not defined ํ˜ธ์ด์ŠคํŒ…์€ ์Šค์ฝ”ํ”„๋ฅผ ๋‹จ์œ„๋กœ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค. ํ˜ธ์ด์ŠคํŒ…์€ ๋ณ€์ˆ˜ ์„ ์–ธ์ด ์Šค์ฝ”ํ”„์ด ์„ ๋‘๋กœ ๋Œ์–ด ์˜ฌ๋ ค์ง„ ๊ฒƒ์ฒ˜๋Ÿผ ๋™์ž‘ํ•˜๋Š” JS ๊ณ ์œ ์˜ ํŠน์ง•์„ ๋งํ•ฉ๋‹ˆ๋‹ค. 14.1.2 ์ „์—ญ ๋ณ€์ˆ˜์˜ ์ƒ๋ช… ์ฃผ๊ธฐ ํ•จ์ˆ˜์™€ ๋‹ฌ๋ฆฌ ์ „์—ญ ์ฝ”๋“œ๋Š” ๋ช…์‹œ์ ์ธ ํ˜ธ์ถœ ์—†์ด ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. var ํ‚ค์›Œ๋“œ๋กœ ์„ ์–ธํ•œ ์ „์—ญ ๋ณ€์ˆ˜๋Š” ์ „์—ญ ๊ฐ์ฒด์˜ ํ”„๋กœํผํ‹ฐ๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์ „์—ญ ๋ณ€์ˆ˜์˜ ์ƒ๋ช… ์ฃผ๊ธฐ๊ฐ€ ์ „์—ญ ๊ฐ์ฒด์˜ ์ƒ๋ช… ์ฃผ๊ธฐ์™€ ..

[๋ชจ๋˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ Deep Dive] 05์žฅ ํ‘œํ˜„์‹๊ณผ ๋ฌธ

์ด ๊ธ€์€ ๋ชจ๋˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ Deep Dive ๋ฐ”ํƒ•์œผ๋กœ ์ •๋ฆฌํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค. 5.1 ๊ฐ’ ๊ฐ’(value)๋Š” ์‹์ด ํ‰๊ฐ€๋˜์–ด ์ƒ์„ฑ๋œ ๊ฒฐ๊ณผ๋ฅผ ๋งํ•ฉ๋‹ˆ๋‹ค. 5.2 ๋ฆฌํ„ฐ๋Ÿด ๋ฆฌํ„ฐ๋Ÿด(literal)์€ ์‚ฌ๋žŒ์ด ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ž ๋˜๋Š” ์•ฝ์†๋œ ๊ธฐํ˜ธ๋ฅผ ์‚ฌ์šฉํ•ด ๊ฐ’์„ ์ƒ์„ฑํ•˜๋Š” ํ‘œ๊ธฐ๋ฒ•์„ ๋งํ•ฉ๋‹ˆ๋‹ค. 3 3์€ ์•„๋ผ๋น„์•„ ์ˆซ์ž๊ฐ€ ์•„๋‹Œ ์ˆซ์ž ๋ฆฌํ„ฐ๋Ÿด์ด๋‹ค. js์—”์ง„์€ ์ด๋ฅผ ํ‰๊ฐ€ํ•ด ์ˆซ์ž ๊ฐ’ 3์„ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ! ์ˆซ์ž ์™ธ์—๋„ ๋‹ค์–‘ํ•œ ์ข…๋ฅ˜์˜ ๊ฐ’์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค. (์ •์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด, ๋ถ€๋™์†Œ์ˆ˜์  ๋ฆฌํ„ฐ๋Ÿด, 2์ง„์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด ... ๋ฌธ์ž์—ด ๋ฆฌํ„ฐ๋Ÿด, ๋ถˆ๋ฆฌ์–ธ ๋ฆฌํ„ฐ๋Ÿด, null ๋ฆฌํ„ฐ๋Ÿด, undefined๋ฆฌํ„ฐ๋Ÿด, ๊ฐ์ฒด ๋ฆฌํ„ฐ๋Ÿด, ๋ฐฐ์—ด ๋ฆฌํ„ฐ๋Ÿด, ํ•จ์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด, ์ •๊ทœ ํ‘œํ˜„์‹ ๋ฆฌํ„ฐ๋Ÿด ๋“ฑ) 5.3 ํ‘œํ˜„์‹ ํ‘œํ˜„์‹์€ ๊ฐ’์œผ๋กœ ํ‰๊ฐ€๋  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ด๋‹ค. ํ‘œํ˜„์‹์ด ํ‰๊ฐ€๋˜๋ฉด ์ƒˆ๋กœ์šด ๊ฐ’์„ ์ƒ์„ฑํ•˜..

๋ฐ˜์‘ํ˜•