์๋ฐ์คํฌ๋ฆฝํธ ์์ฑ์
-
ํด๋น ํฌ์คํ ์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์ ๋๋ค. ์์ ์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค. ์ด๋ฒ ์์ ์ ์์์์ ์ ์ฐ์ฅ์ ์์ ์๋ค. ์์์ ๊ตฌ์ฒด์ ์ธ ์๋จ์ธ prototype์ ๋ํด์ ์์ธํ ์์๋ณด์. prototype์ ์๋ฐ์คํฌ๋ฆฝํธ์ ๊ฐ์ฒด์งํฅ์ ์งํฑํ๊ณ ์๋ ํต์ฌ์ ์ธ ๊ฐ๋ ์ด๋ฉฐ, ๋ค๋ฅธ ์ผ๋ฐ์ ์ธ ๊ฐ์ฒด์งํฅ ์ธ์ด์ ๊ตฌ๋ถํ๋ ์ค์ํ ๊ฐ๋ ์ด๋ผ๊ณ ํ ์ ์๋ค. prototype ํ๊ตญ์ด๋ก๋ ์ํ์ ๋๋ก ๋ฒ์ญ๋๋ prototype์ ๋ง ๊ทธ๋๋ก ๊ฐ์ฒด์ ์ํ์ด๋ผ๊ณ ํ ์ ์๋ค. ํจ์๋ ๊ฐ์ฒด๋ค. ๊ทธ๋ฌ๋ฏ๋ก ์์ฑ์๋ก ์ฌ์ฉ๋ ํจ์๋ ๊ฐ์ฒด๋ค. ๊ฐ์ฒด๋ ํ๋กํผํฐ๋ฅผ ๊ฐ์ง ์ ์๋๋ฐ prototype์ด๋ผ๋ ํ๋กํผํฐ๋ ๊ทธ ์ฉ๋๊ฐ ์ฝ์๋์ด ์๋ ํน์ํ ํ๋กํผํฐ๋ค. prototyp..
[Js] prototype | ์์ | javascript ์์ํด๋น ํฌ์คํ ์ "์ํ์ฝ๋ฉ"์ ์ด๊ณ ์ ๋์ ๊ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๋ฆฐ ๊ฒ์๊ธ ์ ๋๋ค. ์์ ์ ์ธ ์ฉ๋๊ฐ ์๋, ๊ฐ์ธ ๊ณต๋ถ ์ ๋ฆฌ ๋ชฉ์ ์ผ๋ก ์ฌ๋ฆฌ๋ ๊ธ์์ ๋ฏธ๋ฆฌ ์๋ฆฝ๋๋ค. ์ด๋ฒ ์์ ์ ์์์์ ์ ์ฐ์ฅ์ ์์ ์๋ค. ์์์ ๊ตฌ์ฒด์ ์ธ ์๋จ์ธ prototype์ ๋ํด์ ์์ธํ ์์๋ณด์. prototype์ ์๋ฐ์คํฌ๋ฆฝํธ์ ๊ฐ์ฒด์งํฅ์ ์งํฑํ๊ณ ์๋ ํต์ฌ์ ์ธ ๊ฐ๋ ์ด๋ฉฐ, ๋ค๋ฅธ ์ผ๋ฐ์ ์ธ ๊ฐ์ฒด์งํฅ ์ธ์ด์ ๊ตฌ๋ถํ๋ ์ค์ํ ๊ฐ๋ ์ด๋ผ๊ณ ํ ์ ์๋ค. prototype ํ๊ตญ์ด๋ก๋ ์ํ์ ๋๋ก ๋ฒ์ญ๋๋ prototype์ ๋ง ๊ทธ๋๋ก ๊ฐ์ฒด์ ์ํ์ด๋ผ๊ณ ํ ์ ์๋ค. ํจ์๋ ๊ฐ์ฒด๋ค. ๊ทธ๋ฌ๋ฏ๋ก ์์ฑ์๋ก ์ฌ์ฉ๋ ํจ์๋ ๊ฐ์ฒด๋ค. ๊ฐ์ฒด๋ ํ๋กํผํฐ๋ฅผ ๊ฐ์ง ์ ์๋๋ฐ prototype์ด๋ผ๋ ํ๋กํผํฐ๋ ๊ทธ ์ฉ๋๊ฐ ์ฝ์๋์ด ์๋ ํน์ํ ํ๋กํผํฐ๋ค. prototyp..
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