์๋ฐ์คํฌ๋ฆฝํธ๋ ๊ฐ์ฒด๊ธฐ๋ฐ์ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ด๋ฉฐ, ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ๊ตฌ์ฑํ๋ ๊ฑฐ์ "๋ชจ๋ ๊ฒ"์ด ๊ฐ์ฒด๋ค. ์์ ๊ฐ์ ์ ์ธํ ๋๋จธ์ง ๊ฐ(ํจ์, ๋ฐฐ์ด, ์ ๊ท ํํ์ ๋ฑ)์ ๋ชจ๋ ๊ฐ์ฒด๋ค.
์์ ํ์
์ ๋จ ํ๋์ ๊ฐ๋ง ๋ํ๋ด์ง๋ง ๊ฐ์ฒด ํ์
์ ๋ค์ํ ํ์
์ ๊ฐ์ ํ๋์ ๋จ์๋ก ๊ตฌ์ฑํ ๋ณตํฉ์ ์ธ ์๋ฃ๊ตฌ์กฐ๋ค. ๋ํ ์์ ํ์
์ ๊ฐ, ์ฆ ์์ ๊ฐ์ ๋ณ๊ฒฝ ๋ถ๊ฐ๋ฅํ ๊ฐ์ด์ง๋ง ๊ฐ์ฒด ํ์
์ ๊ฐ, ์ฆ ๊ฐ์ฒด๋ ๋ณ๊ฒฝ ๊ฐ๋ฅํ ๊ฐ์ด๋ค.
๊ฐ์ฒด๋ 0๊ฐ ์ด์์ ํ๋กํผํฐ๋ก ๊ตฌ์ฑ๋ ์งํฉ์ด๋ฉฐ, ํ๋กํผํฐ๋ ํค์ ๊ฐ์ผ๋ก ๊ตฌ์ฑ๋๋ค
`
โ๏ธ ํ๋กํผํฐ
๊ฐ์ฒด๋ ํ๋กํผํฐ์ ์งํฉ์ด๋ฉฐ, ํ๋กํผํฐ๋ ํค์ ๊ฐ์ผ๋ก ๊ตฌ์ฑ๋๋ค.var person = { // ํ๋กํผํฐ ํค๋ name, ํ๋กํผํฐ ๊ฐ์ "Lee" name : 'Lee', // ํ๋กํผํฐ ํค๋ age, ํ๋กํผํฐ ๊ฐ์ 20 age: 20 };
var circle = {
radius: 5, // ํ๋กํผํฐ
// ์์ ์ง๋ฆ
getDiameter: function () { // ๋ฉ์๋
return 2 * this.radius; // this๋ circle์ ๊ฐ๋ฆฌํจ๋ค
}
};
console.log(circle.getDiameter()); // 10
let x = 1, y = 2;
// ํ๋กํผํฐ ์ถ์ฝ ํํ
const obj = {x,y};
console.log(obj); // {x:1, y:2}
ES6์์๋ ๊ฐ์ฒด ๋ฆฌํฐ๋ด ๋ด๋ถ์์๋ ๊ณ์ฐ๋ ํ๋กํผํฐ ์ด๋ฆ์ผ๋ก ํ๋กํผํฐ ํค๋ฅผ ๋์ ์์ฑํ ์ ์๋ค.
const prefix = 'prop';
let i = 0;
const obj = {
[`${prefix}-${++i}`]: i,
[`${prefix}-${++i}`]: i,
[`${prefix}-${++i}`]: i
};
console.log(obj); // {prop-1: 1, prop-2: 2, prop-3: 3}
ES6์์๋ ๋ฉ์๋๋ฅผ ์ ์ํ ๋ function ํค์๋๋ฅผ ์๋ตํ ์ถ์ฝ ํํ์ ์ฌ์ฉํ ์ ์๋ค.
const obj = {
name: 'Lee',
// ๋ฉ์๋ ์ถ์ฝ ํํ
sayHi() {
console.log('Hi! ' + this.name);
}
};
obj.sayHi(); // Hi! Lee