๐ก๊ฐ์ฒด(Object)๋? ๋ณ์์ ํจ์๊ฐ ๋ชจ์ฌ ๋ง๋ ํ๋์ ์ธํธ๋ก ๋ง๋ค์ด์ฃผ๋๊ฒ ์ค๋ธ์ ํธ๋ค.
๋น ๊ฐ์ฒด๋ฅผ ์์ฑํ์ฌ ๋ณ์์ ํจ์๋ฅผ ๊ทธ ์์ ์ถ๊ฐํ๋ค.
์ด๋ ์ ์ธ๋ ๋ณ์๋ฅผ 'property', ํจ์๋ 'method'์ด๋ค.
๊ฐ์ฒด ์์ฒด๋ 'property'์ 'method'๋ฅผ ๊ฐ๋ ์ญํ ์ ํ๋ค.
โจ
์์ ๊ฐ์ด ๊ฐ์ฒด๋ {} ์ค๊ดํธ๋ก ๊ฐ์ธ์ง๊ณ , ์ฝ๋ก ์ผ๋ก ๊ตฌ๋ถ๋ ์ด๋ฆ/๊ฐ ์๋ค์ด ์ผํ๋ก ๋ถ๋ฆฌ๋ ๋ชฉ๋ก์ ํํ์ด๋ค.
โจ ํด๋น ๊ฐ์ฒด์ Property ๊ฐ์ ์ ๊ทผํ๊ณ ์ถ์๋๋ ์ด๋ ๊ฒ..
๋ง์นจํ(.)์ฐ์ฐ์๋ฅผ ์ฌ์ฉํด์ ์ ๊ทผํ๋ ค๋ ๊ฐ์ฒด๋ช
์ ์ผ์ชฝ์, ์ธ ๋กํผํฐ๋ช
์ ์ค๋ฅธ์ชฝ์์์นํ๋ค.
๋๊ดํธ[] ๋ฅผ ์ฌ์ฉํ์ฌ ์ ๊ทผํ๋ ค๋ ๊ฐ์ฒด๋ช
์ ์ผ์ชฝ์, ํ๋กํผํฐ๋ช
์ ์๋ฐ์ดํ์ ํจ๊ป ๋๊ดํธ ์์ ์์ฑ!
์๋ ์ฝ๋์์ ์ด๋ป๊ฒ ๊ฐ์ฒด์ ํ๋กํผํฐ์ ์ ๊ทผํ๋์ง ํ์ธํ๊ธฐ.
1.
๐ ๋ณ์์ ํจ์๊ฐ ๋ชจ์ฌ ๋ง๋ ํ๋์ ๊พธ๋ฌ๋ฏธํํ๋ก ๋ณด์ฌ์ง๋๊ฒ object๋ผ๊ณ ํ๋๋ฐ,
์ด๋ค์์ผ๋ก ์ฐ๋์ง ์ดํด๋ณด๊ธฐ.
age๊ฐ 22๋ก ์ถ๋ ฅ๋๋ ๊ฑธ ๋ณผ ์ ์๋ค.
์ฌ๊ธฐ์์ kim์ object์ด๊ณ , ์์ ๋ค์ด์๋ ์ ์ธ๋ ๋ณ์๋ค์ด property์ด๋ค.
๊ทธ๋ฆฌ๊ณ ํจ์๊ฐ ํ ์ผ์ ์ ์ด๋ณด์. this๋ฅผ ํ์ฉํ๋ฉด ๋๋ค. ์ฌ๊ธฐ์ this๋ kim ๊ฐ์ฒด ์์ฒด๋ฅผ ์๋ฏธํ๋ค.
.
.
์ฌ๊ธฐ์์ ์์ง๊น์ง ํจ์๊ฐ ์๋ค์ด์๋ค๋ ๊ฑธ ๋์น์ฑ ์ ์๋๋ฐ,
getAge๋ผ๋ property์ function์ ์ถ๊ฐํด๋ณด์.
์ด๋ฐ์์ผ๋ก age๋ผ๋ ์๋ก์ด ๋ณ์์ kim.getAge();๋ฅผ ๋ถ๋ฌ์ค๊ณ
์ถ๋ ฅ์ age๋ฅผ ๋ฃ๊ณ ์ถ๋ ฅํ๋ฉด ์์ ๊ฐ์ด 22๋ผ๋ ๊ฒฐ๊ณผ๊ฐ ๋์จ๋ค. ํจ์์ ๋ณ์๋ฅผ ํ๋ฐ ๋ฌถ์ด์ ์ธํธ๋ก ๋ํ๋ด๋๊ฒ ์ค๋ธ์ ํธ์ด๋ค. ๋ค์์ ๊บผ๋ด์์ธ ์ ์๋ค.
ํจ์๋ฅผ ๋ฐ์ผ๋ก ๋นผ๋ฒ๋ฆผ. ๊ฒฐ๊ณผ๋ ๋๊ฐ์ด ๋์จ๋ค.