๋ฐ์ํ
๐ ์ค๋ ํ ์ผ
โ๏ธ 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 |
๋๊ธ