๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Daily/Today I Learned

210129_TIL

by joooing 2021. 1. 30.
๋ฐ˜์‘ํ˜•

๐ŸŽ ์˜ค๋Š˜ ํ•œ ์ผ


โœ”๏ธ Javascript ๋ณต์Šต
์†”๋กœ ๋ฐ์ด๋™์•ˆ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ฐœ๋…๋“ค์— ๋Œ€ํ•ด ์ข€ ๋” ํ™•์‹คํžˆ ๊ณต๋ถ€ํ•˜๋ ค๊ณ  ์ฑ…์„ ํ•œ๊ถŒ ์ƒ€์—ˆ๋Š”๋ฐ ๊ทธ ๋™์•ˆ ๋ฐฐ์› ๋˜ ๋ถ€๋ถ„๋“ค์„ ์ญ‰ ๋‹ค์‹œ ํ•œ๋ฒˆ์”ฉ ์ •๋ฆฌํ•ด๋ดค๋‹ค. ์ผ๋‹จ ๋ชฉ์ฐจ๋ฅผ ๋ณด๋‹ˆ ์ „๋ฐ˜์ ์ธ ๊ฐœ๋…๋“ค์„ ๋Œ€๋ถ€๋ถ„ ์ตํžŒ ์ƒํƒœ์—ฌ์„œ, ๋น ๋ฅด๊ฒŒ ์ฝ์–ด๋ณด๋ฉด์„œ ๋ถ€์กฑํ•œ ๋ถ€๋ถ„๋งŒ ํŒŒ์•…ํ•ด ๊ทธ ๋ถ€๋ถ„๋งŒ ์ง‘์ค‘์ ์œผ๋กœ ๊ณต๋ถ€ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค. ์ •๋ง ๊ธฐ๋ณธ์ ์ธ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์ด๋‚˜ ECMAScript ๋ถ€๋ถ„๋„ ์˜ˆ์ „์—” ๊ทธ๋ƒฅ ๋Œ€์ถฉ์ฝ๊ณ  ๋„˜์–ด๊ฐ”๋Š”๋ฐ ์กฐ๊ธˆ ์•„๋Š”๊ฒŒ ์ƒ๊ธฐ๊ณ  ๋‚˜์„œ ๋ณด๋‹ˆ๊นŒ ์žฌ๋ฐŒ๊ฒŒ(?) ์ฝ์„ ์ˆ˜ ์žˆ์—ˆ๋‹ค. ๋ฐ์ดํ„ฐ ํƒ€์ž…, ์—ฐ์‚ฐ์ž, ์ œ์–ด๋ฌธ, ํƒ€์ž… ๋ณ€ํ™˜๊ณผ ๋‹จ์ถ• ํ‰๊ฐ€, Primitive Type๊ณผ Reference Type์˜ ์ฐจ์ด์ ๋„ ๋ฉ”๋ชจ๋ฆฌ์—์„œ ์–ด๋–ค์‹์œผ๋กœ ๋™์ž‘ํ•˜๋Š”์ง€ ๋ณด๋ฉด์„œ ์ข€ ๋” ์ •ํ™•ํ•˜๊ฒŒ ์•Œ๊ฒŒ๋œ ๊ฒƒ ๊ฐ™๋‹ค. Javascript์˜ ๊ฐ์ฒด ๋ถ€๋ถ„์„ ์ข€ ์ž์„ธํžˆ ๋ดค๋Š”๋ฐ ๋ฌธ์ž์—ด์— length ๋ฉ”์„œ๋“œ๋ฅผ ์ ์šฉํ•˜๋Š”๊ฒŒ ๋ž˜ํผ ๊ฐ์ฒด์˜ ์กด์žฌ ๋•๋ถ„์ด๋ผ๋Š” ๊ฒƒ, ๊ทธ๋ฆฌ๊ณ  ๋ž˜ํผ ๊ฐ์ฒด๋Š” ์ž ๊น ์ƒ์„ฑ๋˜์—ˆ๋‹ค๊ฐ€ ์‚ฌ๋ผ์ง„๋‹ค๋Š” ๊ฒƒ๋„ ์•Œ๊ฒŒ๋˜์—ˆ๋‹ค. + ๊ฐ์ฒด ์ข…๋ฅ˜๋„ ์‹คํ–‰ ํ™˜๊ฒฝ์— ์ƒ๊ด€์—†์ด ์‚ฌ์šฉ๊ฐ€๋Šฅํ•œ ํ‘œ์ค€ ๋นŒํŠธ์ธ ๊ฐ์ฒด์™€ ์‹คํ–‰ํ™˜๊ฒฝ์ด ์ถ”๊ฐ€๋กœ ์ œ๊ณตํ•˜๋Š” ํ˜ธ์ŠคํŠธ ๊ฐ์ฒด๋กœ ๊ตฌ๋ถ„๋œ๋‹ค๋Š” ๊ฒƒ๋„ ์•Œ๊ฒŒ๋˜์—ˆ๋‹ค. ๋ธŒ๋ผ์šฐ์ €์™€ Node.js์—์„œ์˜ ์ž‘๋™์ด ์–ด๋–ป๊ฒŒ ๋‹ค๋ฅธ์ง€์— ๋Œ€ํ•œ ๊ถ๊ธˆ์ฆ์„ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.

โœ”๏ธ N-Queens ๋ ˆํผ๋Ÿฐ์Šค ๋ถ„์„
์ •๋ง ๊น”๋”ํ•œ ์—”ํ€ธ์ฆˆ ๋ ˆํผ๋Ÿฐ์Šค๋ฅผ ๋ณด๋ฉด์„œ ๋‚ด๊ฐ€ ํ—ท๊ฐˆ๋ ธ๋˜ ๋ถ€๋ถ„์ด ๋ญ์˜€๋Š”์ง€ ํŒŒ์•…ํ•ด๋ดค๋‹ค. ํŠนํžˆ ์žฌ๊ท€ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ๋ชจ๋“  ๊ฒŒ ๋‹ค ๋“ค์–ด๊ฐ€์žˆ๋Š” ์ฝ”๋“œ์—ฌ์„œ ์•ฝ๊ฐ„ ํ…œํ”Œ๋ฆฟ์ฒ˜๋Ÿผ ์ •๋ฆฌํ•  ์ˆ˜ ์žˆ๋˜ ๊ฒƒ ๊ฐ™๋‹ค.

 

๐ŸŽ ๊ธฐ์–ตํ•  ๊ฒƒ


โœ”๏ธ ์•”๋ฌต์ , ๋ช…์‹œ์  ํƒ€์ž… ๋ณ€ํ™˜
[10, 20] + '' // '10,20'
10 * '10' // 100
-10 + '' // '-10'
+true; // 1
!!1; // true

โœ”๏ธ ?.(์˜ต์…”๋„ ์ฒด์ด๋‹ ์—ฐ์‚ฐ์ž), ??(null ๋ณ‘ํ•ฉ ์—ฐ์‚ฐ์ž)
?. : ์ขŒํ•ญ์˜ ํ”ผ์—ฐ์‚ฐ์ž๊ฐ€ null, undefined์ด๋ฉด undefined ๋ฐ˜ํ™˜, ์•„๋‹ˆ๋ฉด ์šฐํ•ญ ํ”„๋กœํผํ‹ฐ ์ฐธ์กฐ
?? : ์ขŒํ•ญ ํ”ผ์—ฐ์‚ฐ์ž๊ฐ€ null, undefined์ด๋ฉด ์šฐํ•ญ ํ”ผ์—ฐ์‚ฐ์ž ๋ฐ˜ํ™˜, ์•„๋‹ˆ๋ฉด ์ขŒํ•ญ ํ”ผ์—ฐ์‚ฐ์ž ๋ฐ˜ํ™˜

โœ”๏ธ ๊ฐ์ฒด ํ”„๋กœํผํ‹ฐ๋ช… ๋™์ ์œผ๋กœ ์ƒ์„ฑํ•˜๊ธฐ

๐ŸŽ ๋” ๊ณต๋ถ€ํ•  ๊ฒƒ


โœ”๏ธ ํžˆ๋“  ํด๋ž˜์Šค
โœ”๏ธ ์Šค์ฝ”ํ”„, ์ „์—ญ๋ณ€์ˆ˜, let/const/var ๋ณต์Šต

 

โœ๏ธ ์„ธ์…˜์—์„œ ๊ธฐ์–ต์— ๋‚จ๋Š” ๋ง : ๋ชปํ•˜๋Š”๊ฑด ์ƒ๊ด€์—†์ง€๋งŒ ๋ชปํ•˜๋Š”๊ฑธ ๋†”๋‘๋Š”๊ฒŒ ๋ฌธ์ œ๋‹ค

 

๋ฐ˜์‘ํ˜•

'Daily > Today I Learned' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

210202_TIL  (0) 2021.02.03
210201_TIL  (0) 2021.02.02
210128_TIL  (0) 2021.01.29
210127_TIL  (0) 2021.01.28
210126_TIL  (0) 2021.01.27

๋Œ“๊ธ€