Languages
Improve your skills through various languages

-
ํด๋น ํฌ์คํ ์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์ ๋๋ค. ์์ ์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค. this this๋ ํจ์ ๋ด์์ ํจ์ ํธ์ถ ๋งฅ๋ฝ(context)๋ฅผ ์๋ฏธํ๋ค. ๋งฅ๋ฝ์ด๋ผ๋ ๊ฒ์ ์ํฉ์ ๋ฐ๋ผ์ ๋ฌ๋ผ์ง๋ค๋ ์๋ฏธ์ธ๋ฐ ์ฆ ํจ์๋ฅผ ์ด๋ป๊ฒ ํธ์ถํ๋๋์ ๋ฐ๋ผ์ this๊ฐ ๊ฐ๋ฆฌํค๋ ๋์์ด ๋ฌ๋ผ์ง๋ค๋ ๋ป์ด๋ค. ํจ์์ ๊ฐ์ฒด์ ๊ด๊ณ๊ฐ ๋์จํ ์๋ฐ์คํฌ๋ฆฝํธ์์ this๋ ์ด ๋์ ์ฐ๊ฒฐ์์ผ์ฃผ๋ ์ค์ง์ ์ธ ์ฐ๊ฒฐ์ ์ ์ญํ ์ ํ๋ค. ์ฆ this๋ ์ฝ์๋ ๋ณ์๋ผ๊ณ ํ ์ ์์ผ๋ฉฐ, ํจ์์์์ ์ฌ์ฉํ ์ ์๋ ์ผ์ข ์ ๋ณ์์ด๋ค. ์ด ๊ฐ์ ์๋ฏธ๋ ํจ์๋ฅผ ์ด๋ป๊ฒ ํธ์ถํ๋๋์ ๋ฐ๋ผ์ ๋ฌ๋ผ์ง๋ค๋ ๋ป์ด๋ค. ํจ์ํธ์ถ ํจ์๋ฅผ ํธ์ถํ์ ๋ this๋ ๋ฌด์์ ๊ฐ๋ฅดํค๋์ง ์ดํด๋ณด์. thi..
[Js] this | ํจ์ํธ์ถ | ๋ฉ์๋์ ํธ์ถ | allpy, call | ๊ฐ์ฒดํด๋น ํฌ์คํ ์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์ ๋๋ค. ์์ ์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค. this this๋ ํจ์ ๋ด์์ ํจ์ ํธ์ถ ๋งฅ๋ฝ(context)๋ฅผ ์๋ฏธํ๋ค. ๋งฅ๋ฝ์ด๋ผ๋ ๊ฒ์ ์ํฉ์ ๋ฐ๋ผ์ ๋ฌ๋ผ์ง๋ค๋ ์๋ฏธ์ธ๋ฐ ์ฆ ํจ์๋ฅผ ์ด๋ป๊ฒ ํธ์ถํ๋๋์ ๋ฐ๋ผ์ this๊ฐ ๊ฐ๋ฆฌํค๋ ๋์์ด ๋ฌ๋ผ์ง๋ค๋ ๋ป์ด๋ค. ํจ์์ ๊ฐ์ฒด์ ๊ด๊ณ๊ฐ ๋์จํ ์๋ฐ์คํฌ๋ฆฝํธ์์ this๋ ์ด ๋์ ์ฐ๊ฒฐ์์ผ์ฃผ๋ ์ค์ง์ ์ธ ์ฐ๊ฒฐ์ ์ ์ญํ ์ ํ๋ค. ์ฆ this๋ ์ฝ์๋ ๋ณ์๋ผ๊ณ ํ ์ ์์ผ๋ฉฐ, ํจ์์์์ ์ฌ์ฉํ ์ ์๋ ์ผ์ข ์ ๋ณ์์ด๋ค. ์ด ๊ฐ์ ์๋ฏธ๋ ํจ์๋ฅผ ์ด๋ป๊ฒ ํธ์ถํ๋๋์ ๋ฐ๋ผ์ ๋ฌ๋ผ์ง๋ค๋ ๋ป์ด๋ค. ํจ์ํธ์ถ ํจ์๋ฅผ ํธ์ถํ์ ๋ this๋ ๋ฌด์์ ๊ฐ๋ฅดํค๋์ง ์ดํด๋ณด์. thi..
2021.02.04 -
ํด๋น ํฌ์คํ ์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์ ๋๋ค. ์์ ์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค. ์ ์ญ๊ฐ์ฒด๋? ์ ์ญ๊ฐ์ฒด(Global object)๋ ํน์ํ ๊ฐ์ฒด๋ค. ๋ชจ๋ ๊ฐ์ฒด๋ ์ด ์ ์ญ๊ฐ์ฒด์ ํ๋กํผํฐ๋ค. func();์ window.func();๋ ๋ชจ๋ ์คํ์ด ๋๋ค. ๋ชจ๋ ์ ์ญ๋ณ์์ ํจ์๋ ์ฌ์ค window ๊ฐ์ฒด์ ํ๋กํผํฐ๋ค. ๊ฐ์ฒด๋ฅผ ๋ช ์ํ์ง ์์ผ๋ฉด ์์์ ์ผ๋ก window์ ํ๋กํผํฐ๋ก ๊ฐ์ฃผ๋๋ค. ํ์์ ๊ทธ๋ฅ ํธํ๊ฒ ์ฌ์ฉํ๊ธฐ ์ํด ์๋ตํด์ ์ฌ์ฉํ๋ ๊ฒ์ผ ๋ฟ์ด๋ค. ๋ด๋ถ์ ์ผ๋ก ๋ช ์ํ ๊ฒ๊ณผ ๊ฐ๊ฒ ๋์ํ๋ค. ์๋ฐ์คํฌ๋ฆฝํธ๋ ์๋์ฐ๋ผ๋ ์ ์ญ๊ฐ์ฒด์ ํ๋กํผํฐ ์ด๋ฏ๋ก, ๊ฐ์ฒด๋ผ๋ ๊ฒ์ ๋ชจ๋ ๊ฒ์ด ์ข ์๋์ด ์๊ธฐ ๋๋ฌธ์ ๊ฐ์ฒด ์งํฅ์ธ์ด๋ผ๊ณ ํ๋ ๊ฒ์ด๋ค. ์๋ฐ์คํฌ๋ฆฝํธ์์ ๋ชจ..
[Js] ์ ์ญ ๊ฐ์ฒด | ์ ์ญ๊ฐ์ฒด APIํด๋น ํฌ์คํ ์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์ ๋๋ค. ์์ ์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค. ์ ์ญ๊ฐ์ฒด๋? ์ ์ญ๊ฐ์ฒด(Global object)๋ ํน์ํ ๊ฐ์ฒด๋ค. ๋ชจ๋ ๊ฐ์ฒด๋ ์ด ์ ์ญ๊ฐ์ฒด์ ํ๋กํผํฐ๋ค. func();์ window.func();๋ ๋ชจ๋ ์คํ์ด ๋๋ค. ๋ชจ๋ ์ ์ญ๋ณ์์ ํจ์๋ ์ฌ์ค window ๊ฐ์ฒด์ ํ๋กํผํฐ๋ค. ๊ฐ์ฒด๋ฅผ ๋ช ์ํ์ง ์์ผ๋ฉด ์์์ ์ผ๋ก window์ ํ๋กํผํฐ๋ก ๊ฐ์ฃผ๋๋ค. ํ์์ ๊ทธ๋ฅ ํธํ๊ฒ ์ฌ์ฉํ๊ธฐ ์ํด ์๋ตํด์ ์ฌ์ฉํ๋ ๊ฒ์ผ ๋ฟ์ด๋ค. ๋ด๋ถ์ ์ผ๋ก ๋ช ์ํ ๊ฒ๊ณผ ๊ฐ๊ฒ ๋์ํ๋ค. ์๋ฐ์คํฌ๋ฆฝํธ๋ ์๋์ฐ๋ผ๋ ์ ์ญ๊ฐ์ฒด์ ํ๋กํผํฐ ์ด๋ฏ๋ก, ๊ฐ์ฒด๋ผ๋ ๊ฒ์ ๋ชจ๋ ๊ฒ์ด ์ข ์๋์ด ์๊ธฐ ๋๋ฌธ์ ๊ฐ์ฒด ์งํฅ์ธ์ด๋ผ๊ณ ํ๋ ๊ฒ์ด๋ค. ์๋ฐ์คํฌ๋ฆฝํธ์์ ๋ชจ..
2021.02.04 -
ํด๋น ํฌ์คํ ์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์ ๋๋ค. ์์ ์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค. ์์ฑ์์ new ๊ฐ์ฒด ์๋ฐ์คํฌ๋ฆฝํธ ์ธ์ด์ ์ํ๋ ๊ณ์ด์ ์ธ์ด๋ค์ prototype - based programming์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค. ๊ฐ์ฒด๋ ์๋ก ์ฐ๊ด๋ ๋ณ์์ ํจ์๋ฅผ ๊ทธ๋ฃนํํ ๊ทธ๋ฆ์ด๋ผ๊ณ ํ ์ ์๋ค. ๊ฐ์ฒด ๋ด์ ๋ณ์๋ฅผ ํ๋กํผํฐ(property) ํจ์๋ฅผ ๋ฉ์๋(method)๋ผ๊ณ ๋ถ๋ฅธ๋ค. ๊ฐ์ฒด๋ฅผ ๋ง๋ค์ด๋ณด์. ์ ์ฝ๋์์ this๋ ํจ์๊ฐ ์ํด์๋ ๊ฐ์ฒด ์ฆ person์ด๋ผ๋ ๋ณ์๊ฐ ๋ด๊ณ ์๋ ๊ฐ์ฒด๋ฅผ ์๋ฏธํ๋ค. ๊ฐ์ฒด๋ฅผ ๋ง๋๋ ๊ณผ์ ์ ๋ถ์ฐ๋์ด ์๋ค. ๊ฐ์ฒด๋ฅผ ์ ์ ํ ๋ ๊ฐ์ ์ ํ ํ๋๋ก ์ฝ๋๋ฅผ ๋ฐ๊ฟ๋ณด์. ๊ฐ๋ ์ฑ๋ ์ข๊ณ , ๋ด์ฉ์ด ์ค๊ฐ์ ๋ผ์ด๋ค๊ฑฐ๋ ๋ณ์กฐ๋๋ ์ํฉ์ ..
[Js] ์์ฑ์์ new | javascript์ ๊ฐ์ฒด ์งํฅ ํน์ง | ๊ฐ์ฒดํด๋น ํฌ์คํ ์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์ ๋๋ค. ์์ ์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค. ์์ฑ์์ new ๊ฐ์ฒด ์๋ฐ์คํฌ๋ฆฝํธ ์ธ์ด์ ์ํ๋ ๊ณ์ด์ ์ธ์ด๋ค์ prototype - based programming์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค. ๊ฐ์ฒด๋ ์๋ก ์ฐ๊ด๋ ๋ณ์์ ํจ์๋ฅผ ๊ทธ๋ฃนํํ ๊ทธ๋ฆ์ด๋ผ๊ณ ํ ์ ์๋ค. ๊ฐ์ฒด ๋ด์ ๋ณ์๋ฅผ ํ๋กํผํฐ(property) ํจ์๋ฅผ ๋ฉ์๋(method)๋ผ๊ณ ๋ถ๋ฅธ๋ค. ๊ฐ์ฒด๋ฅผ ๋ง๋ค์ด๋ณด์. ์ ์ฝ๋์์ this๋ ํจ์๊ฐ ์ํด์๋ ๊ฐ์ฒด ์ฆ person์ด๋ผ๋ ๋ณ์๊ฐ ๋ด๊ณ ์๋ ๊ฐ์ฒด๋ฅผ ์๋ฏธํ๋ค. ๊ฐ์ฒด๋ฅผ ๋ง๋๋ ๊ณผ์ ์ ๋ถ์ฐ๋์ด ์๋ค. ๊ฐ์ฒด๋ฅผ ์ ์ ํ ๋ ๊ฐ์ ์ ํ ํ๋๋ก ์ฝ๋๋ฅผ ๋ฐ๊ฟ๋ณด์. ๊ฐ๋ ์ฑ๋ ์ข๊ณ , ๋ด์ฉ์ด ์ค๊ฐ์ ๋ผ์ด๋ค๊ฑฐ๋ ๋ณ์กฐ๋๋ ์ํฉ์ ..
2021.02.04 -
ํด๋น ํฌ์คํ ์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์ ๋๋ค. ์์ ์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค. ๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ(Object-Oriented Programming)์ ์ข ๋ ๋์ ํ๋ก๊ทธ๋จ์ ๋ง๋ค๊ธฐ ์ํ ํ๋ก๊ทธ๋๋ฐ ํจ๋ฌ๋ค์์ผ๋ก ๋ก์ง์ ์ํ(state)์ ํ์(behave)๋ก ์ด๋ฃจ์ด์ง ๊ฐ์ฒด๋ก ๋ง๋๋ ๊ฒ์ด๋ค. ์ด ๊ฐ์ฒด๋ค์ ๋ง์น ๋ ๊ณ ๋ธ๋ญ์ฒ๋ผ ์กฐ๋ฆฝํด์ ํ๋์ ํ๋ก๊ทธ๋จ์ ๋ง๋๋ ๊ฒ์ด ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ์ด๋ผ๊ณ ํ ์ ์๋ค. ๋ค์ ๋งํด์ ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ์ ๊ฐ์ฒด๋ฅผ ๋ง๋๋ ๊ฒ์ด๋ค. ๋ฐ๋ผ์ ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ์ ์์์ ๊ฐ์ฒด๋ ๋ฌด์์ธ๊ฐ๋ฅผ ์ดํดํ๋ ๊ฒ์ด๋ผ๊ณ ํ ์ ์๋ค. ๋ง์ด ์ด๋ ต๊ฒ ๋๊ปด์ง์ง ์๋๊ฐ? ๊ทธ๊ฒ์ ์์ง ๊ฐ์ฒด ์งํฅ์ ๋ํ ์ฒดํ์ด..
[Js] ๊ฐ์ฒด์งํฅ | javascript ๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ | ๋ฌธ๋ฒํด๋น ํฌ์คํ ์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์ ๋๋ค. ์์ ์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค. ๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ(Object-Oriented Programming)์ ์ข ๋ ๋์ ํ๋ก๊ทธ๋จ์ ๋ง๋ค๊ธฐ ์ํ ํ๋ก๊ทธ๋๋ฐ ํจ๋ฌ๋ค์์ผ๋ก ๋ก์ง์ ์ํ(state)์ ํ์(behave)๋ก ์ด๋ฃจ์ด์ง ๊ฐ์ฒด๋ก ๋ง๋๋ ๊ฒ์ด๋ค. ์ด ๊ฐ์ฒด๋ค์ ๋ง์น ๋ ๊ณ ๋ธ๋ญ์ฒ๋ผ ์กฐ๋ฆฝํด์ ํ๋์ ํ๋ก๊ทธ๋จ์ ๋ง๋๋ ๊ฒ์ด ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ์ด๋ผ๊ณ ํ ์ ์๋ค. ๋ค์ ๋งํด์ ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ์ ๊ฐ์ฒด๋ฅผ ๋ง๋๋ ๊ฒ์ด๋ค. ๋ฐ๋ผ์ ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ์ ์์์ ๊ฐ์ฒด๋ ๋ฌด์์ธ๊ฐ๋ฅผ ์ดํดํ๋ ๊ฒ์ด๋ผ๊ณ ํ ์ ์๋ค. ๋ง์ด ์ด๋ ต๊ฒ ๋๊ปด์ง์ง ์๋๊ฐ? ๊ทธ๊ฒ์ ์์ง ๊ฐ์ฒด ์งํฅ์ ๋ํ ์ฒดํ์ด..
2021.02.04 -
ํด๋น ํฌ์คํ ์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์ ๋๋ค. ์์ ์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค. ํจ์ํธ์ถ ํจ์์ ๋ํ ๊ธฐ๋ณธ ์์ ์์ ํจ์๋ฅผ ํธ์ถํ๋ ๋ฐฉ๋ฒ์ ์์๋ดค๋ค. ์๋๋ ํจ์๋ฅผ ํธ์ถํ๋ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ๋ฐฉ๋ฒ์ด๋ค. ์๋ฐ์คํฌ๋ฆฝํธ์์ ํจ์๋ผ๋ ๊ฒ์ ์ผ์ข ์ ๊ฐ์ฒด์ด๋ค. ๊ฐ์ฒด๋ ์์ฑ๋ค์ ๊ฐ์ง๊ณ ์๋ค. ์ด ์์ฑ์ ๊ฐ์ด ์ ์ฅ๋์ด ์๋ค๋ฉด "์์ฑ"์ด๋ผ๊ณ ํ๊ณ , ํจ์๊ฐ ์ ์ฅ๋์ด ์๋ค๋ฉด ์ด๊ฒ์ "๋ฉ์๋"๋ผ๊ณ ๋ถ๋ฅธ๋ค. JavaScript๋ ํจ์๋ฅผ ํธ์ถํ๋ ํน๋ณํ ๋ฐฉ๋ฒ์ ์ ๊ณตํ๋ค. ๋ณธ ํ ํฝ์ ์์์์ ํจ์๋ฅผ ๊ฐ์ฒด๋ผ๊ณ ํ๋ค. ์์ ์์ ์์ ํจ์ func๋ Function์ด๋ผ๋ ๊ฐ์ฒด์ ์ธ์คํด์ค๋ค. ๋ฐ๋ผ์ func๋ ๊ฐ์ฒด Function์ด ๊ฐ์ง๊ณ ์๋ ๋ฉ์๋๋ค์ ์์ํ๊ณ ..
[Js] ํจ์์ ํธ์ถ | ์๋ฐ์คํฌ๋ฆฝํธ ํจ์ ํธ์ถ | applyํด๋น ํฌ์คํ ์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์ ๋๋ค. ์์ ์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค. ํจ์ํธ์ถ ํจ์์ ๋ํ ๊ธฐ๋ณธ ์์ ์์ ํจ์๋ฅผ ํธ์ถํ๋ ๋ฐฉ๋ฒ์ ์์๋ดค๋ค. ์๋๋ ํจ์๋ฅผ ํธ์ถํ๋ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ๋ฐฉ๋ฒ์ด๋ค. ์๋ฐ์คํฌ๋ฆฝํธ์์ ํจ์๋ผ๋ ๊ฒ์ ์ผ์ข ์ ๊ฐ์ฒด์ด๋ค. ๊ฐ์ฒด๋ ์์ฑ๋ค์ ๊ฐ์ง๊ณ ์๋ค. ์ด ์์ฑ์ ๊ฐ์ด ์ ์ฅ๋์ด ์๋ค๋ฉด "์์ฑ"์ด๋ผ๊ณ ํ๊ณ , ํจ์๊ฐ ์ ์ฅ๋์ด ์๋ค๋ฉด ์ด๊ฒ์ "๋ฉ์๋"๋ผ๊ณ ๋ถ๋ฅธ๋ค. JavaScript๋ ํจ์๋ฅผ ํธ์ถํ๋ ํน๋ณํ ๋ฐฉ๋ฒ์ ์ ๊ณตํ๋ค. ๋ณธ ํ ํฝ์ ์์์์ ํจ์๋ฅผ ๊ฐ์ฒด๋ผ๊ณ ํ๋ค. ์์ ์์ ์์ ํจ์ func๋ Function์ด๋ผ๋ ๊ฐ์ฒด์ ์ธ์คํด์ค๋ค. ๋ฐ๋ผ์ func๋ ๊ฐ์ฒด Function์ด ๊ฐ์ง๊ณ ์๋ ๋ฉ์๋๋ค์ ์์ํ๊ณ ..
2021.02.04 -
ํด๋น ํฌ์คํ ์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์ ๋๋ค. ์์ ์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค. arguments ๋ฐฐ์ด๊ณผ ๋น์ทํ์ง๋ง ๋ฐฐ์ด์ด ์๋๋ค, ํจ์์๋ arguments๋ผ๋ ๋ณ์์ ๋ด๊ธด ์จ๊ฒจ์ง ์ ์ฌ ๋ฐฐ์ด์ด ์๋ค. ์ด ๋ฐฐ์ด์๋ ํจ์๋ฅผ ํธ์ถํ ๋ ์ ๋ ฅํ ์ธ์๊ฐ ๋ด๊ฒจ์๋ค. ์๋ ์์ ๋ฅผ ๋ณด์. ๊ฒฐ๊ณผ๋ 10์ด๋ค. ์๋ฐ์คํฌ๋ฆฝํธ๋ ๋งค์ฐ ๊ด๋ํ ์ธ์ด์ด๊ธฐ ๋๋ฌธ์, ์ธ์์ ์๋ฅผ ๋ง์๋๋ก ์ง์ ํด๋ ์๋ฌ๊ฐ ๋์ง ์๋๋ค. ์ ์์๋ฅผ ์ดํด๋ณด๋ฉด sum()์ ๋งค๊ฐ๋ณ์๊ฐ ์๋๋ฐ, ์ธ์์ ์๊ฐ 4๊ฐ์ด๋ค. ์ด๋ฌํ ๊ฒฝ์ฐ์๋ ์๋ฌ๊ฐ ๋์ง ์๋๋ค. ์ ์ฝ๋์ arguments๋ผ๋ ๊ฒ์ ์๋ฐ์คํฌ๋ฆฝํธ์์ ์ฝ์๋ ํน์ํ ๋ณ์์ด๋ค. ์ด ๋ณ์ ์์๋ ์ ์ฌ ๊ฐ์ฒด(์ ์ฌ ๋ฐฐ์ด)์ด ๋ด๊ฒจ์ ธ ์๋ค..
[Js] arguments | ๋ฐฐ์ด | javascript ๋ฐฐ์ด | ๋งค๊ฐ๋ณ์ํด๋น ํฌ์คํ ์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์ ๋๋ค. ์์ ์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค. arguments ๋ฐฐ์ด๊ณผ ๋น์ทํ์ง๋ง ๋ฐฐ์ด์ด ์๋๋ค, ํจ์์๋ arguments๋ผ๋ ๋ณ์์ ๋ด๊ธด ์จ๊ฒจ์ง ์ ์ฌ ๋ฐฐ์ด์ด ์๋ค. ์ด ๋ฐฐ์ด์๋ ํจ์๋ฅผ ํธ์ถํ ๋ ์ ๋ ฅํ ์ธ์๊ฐ ๋ด๊ฒจ์๋ค. ์๋ ์์ ๋ฅผ ๋ณด์. ๊ฒฐ๊ณผ๋ 10์ด๋ค. ์๋ฐ์คํฌ๋ฆฝํธ๋ ๋งค์ฐ ๊ด๋ํ ์ธ์ด์ด๊ธฐ ๋๋ฌธ์, ์ธ์์ ์๋ฅผ ๋ง์๋๋ก ์ง์ ํด๋ ์๋ฌ๊ฐ ๋์ง ์๋๋ค. ์ ์์๋ฅผ ์ดํด๋ณด๋ฉด sum()์ ๋งค๊ฐ๋ณ์๊ฐ ์๋๋ฐ, ์ธ์์ ์๊ฐ 4๊ฐ์ด๋ค. ์ด๋ฌํ ๊ฒฝ์ฐ์๋ ์๋ฌ๊ฐ ๋์ง ์๋๋ค. ์ ์ฝ๋์ arguments๋ผ๋ ๊ฒ์ ์๋ฐ์คํฌ๋ฆฝํธ์์ ์ฝ์๋ ํน์ํ ๋ณ์์ด๋ค. ์ด ๋ณ์ ์์๋ ์ ์ฌ ๊ฐ์ฒด(์ ์ฌ ๋ฐฐ์ด)์ด ๋ด๊ฒจ์ ธ ์๋ค..
2021.02.04 -
ํด๋น ํฌ์คํ ์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์ ๋๋ค. ์์ ์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค. ํด๋ก์ ํด๋ก์ (closure)๋ ๋ด๋ถํจ์๊ฐ ์ธ๋ถํจ์์ ๋งฅ๋ฝ(context)์ ์ ๊ทผํ ์ ์๋ ๊ฒ์ ๊ฐ๋ฅดํจ๋ค. ํด๋ก์ ๋ ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ์ด์ฉํ ๊ณ ๋์ด๋์ ํ ํฌ๋์ ๊ตฌ์ฌํ๋๋ฐ ํ์์ ์ธ ๊ฐ๋ ์ผ๋ก ํ์ฉ๋๋ค. ๋ด๋ถํจ์ ์๋ฐ์คํฌ๋ฆฝํธ๋ ํจ์ ์์์ ๋ ๋ค๋ฅธ ํจ์๋ฅผ ์ ์ธํ ์ ์๋ค. ์๋์ ์์ ๋ฅผ ๋ณด์. ๊ฒฐ๊ณผ๋ ๊ฒฝ๊ณ ์ฐฝ์ coding everybody๊ฐ ์ถ๋ ฅ๋ ๊ฒ์ด๋ค. ์ ์์ ์์ inner()๋ ๋ด๋ถํจ์, outter()๋ ์ธ๋ถํจ์์ด๋ค. ์ฆ inner()๋ var inner = function(){} ๊ณผ ๊ฐ์ ์๋ฏธ๋ก, ์ธ๋ถํจ์outter()์ ์ง์ญ๋ณ์๋ผ๊ณ ํ ์ ์..
[Js] ํด๋ก์ | ์ธ๋ถํจ์, ๋ด๋ถํจ์ํด๋น ํฌ์คํ ์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์ ๋๋ค. ์์ ์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค. ํด๋ก์ ํด๋ก์ (closure)๋ ๋ด๋ถํจ์๊ฐ ์ธ๋ถํจ์์ ๋งฅ๋ฝ(context)์ ์ ๊ทผํ ์ ์๋ ๊ฒ์ ๊ฐ๋ฅดํจ๋ค. ํด๋ก์ ๋ ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ์ด์ฉํ ๊ณ ๋์ด๋์ ํ ํฌ๋์ ๊ตฌ์ฌํ๋๋ฐ ํ์์ ์ธ ๊ฐ๋ ์ผ๋ก ํ์ฉ๋๋ค. ๋ด๋ถํจ์ ์๋ฐ์คํฌ๋ฆฝํธ๋ ํจ์ ์์์ ๋ ๋ค๋ฅธ ํจ์๋ฅผ ์ ์ธํ ์ ์๋ค. ์๋์ ์์ ๋ฅผ ๋ณด์. ๊ฒฐ๊ณผ๋ ๊ฒฝ๊ณ ์ฐฝ์ coding everybody๊ฐ ์ถ๋ ฅ๋ ๊ฒ์ด๋ค. ์ ์์ ์์ inner()๋ ๋ด๋ถํจ์, outter()๋ ์ธ๋ถํจ์์ด๋ค. ์ฆ inner()๋ var inner = function(){} ๊ณผ ๊ฐ์ ์๋ฏธ๋ก, ์ธ๋ถํจ์outter()์ ์ง์ญ๋ณ์๋ผ๊ณ ํ ์ ์..
2021.02.04 -
ํด๋น ํฌ์คํ ์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์ ๋๋ค. ์์ ์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค. ๊ฐ์ผ๋ก์์ ํจ์ JavaScript์์๋ ํจ์๋ ๊ฐ์ฒด๋ค. ๋ค์ ๋งํด์ ์ผ์ข ์ ๊ฐ์ด๋ค. (์ด๋ ํ ๊ฐ์ ๋ณ์์ ๋ด์ ์ ์๋ค. ํจ์ ๋ํ ๋ณ์์ ๋ด์ ์ ์๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ํจ์๋ ์ผ์ข ์ ๊ฐ์ด ๋๋๊ฒ์ด๋ค.) ๊ฑฐ์ ๋ชจ๋ ์ธ์ด๊ฐ ํจ์๋ฅผ ๊ฐ์ง๊ณ ์๋ค. JavaScript์ ํจ์๊ฐ ๋ค๋ฅธ ์ธ์ด์ ํจ์์ ๋ค๋ฅธ ์ ์ ํจ์๊ฐ ๊ฐ์ด ๋ ์ ์๋ค๋ ์ ์ด๋ค. ๋ค์ ์์ ๋ฅผ ํตํด์ ๊ทธ ์๋ฏธ๋ฅผ ์์๋ณด์. ์ ๋ ์ฝ๋๋ ๊ฐ์ ์๋ฏธ์ด๋ค. ์์ ์์ ์์ ํจ์ a๋ ๋ณ์ a์ ๋ด๊ฒจ์ง ๊ฐ์ด๋ค. ๋ํ ํจ์๋ ๊ฐ์ฒด์ ๊ฐ์ผ๋ก ํฌํจ๋ ์ ์๋ค. b๋ ์ผ์ข ์ ๋ณ์์ ์ญํ ์ ํ๋ ๊ฒ์ด๋ค. ์ด๋ฐ ..
[Js] ๊ฐ์ผ๋ก์์ ํจ์์ ์ฝ๋ฐฑ | ์ฝ๋ฐฑ | ๋น๋๊ธฐ ์ฒ๋ฆฌํด๋น ํฌ์คํ ์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์ ๋๋ค. ์์ ์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค. ๊ฐ์ผ๋ก์์ ํจ์ JavaScript์์๋ ํจ์๋ ๊ฐ์ฒด๋ค. ๋ค์ ๋งํด์ ์ผ์ข ์ ๊ฐ์ด๋ค. (์ด๋ ํ ๊ฐ์ ๋ณ์์ ๋ด์ ์ ์๋ค. ํจ์ ๋ํ ๋ณ์์ ๋ด์ ์ ์๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ํจ์๋ ์ผ์ข ์ ๊ฐ์ด ๋๋๊ฒ์ด๋ค.) ๊ฑฐ์ ๋ชจ๋ ์ธ์ด๊ฐ ํจ์๋ฅผ ๊ฐ์ง๊ณ ์๋ค. JavaScript์ ํจ์๊ฐ ๋ค๋ฅธ ์ธ์ด์ ํจ์์ ๋ค๋ฅธ ์ ์ ํจ์๊ฐ ๊ฐ์ด ๋ ์ ์๋ค๋ ์ ์ด๋ค. ๋ค์ ์์ ๋ฅผ ํตํด์ ๊ทธ ์๋ฏธ๋ฅผ ์์๋ณด์. ์ ๋ ์ฝ๋๋ ๊ฐ์ ์๋ฏธ์ด๋ค. ์์ ์์ ์์ ํจ์ a๋ ๋ณ์ a์ ๋ด๊ฒจ์ง ๊ฐ์ด๋ค. ๋ํ ํจ์๋ ๊ฐ์ฒด์ ๊ฐ์ผ๋ก ํฌํจ๋ ์ ์๋ค. b๋ ์ผ์ข ์ ๋ณ์์ ์ญํ ์ ํ๋ ๊ฒ์ด๋ค. ์ด๋ฐ ..
2021.02.04