**κ°μ²΄(Object)**λ **μλ‘ κ΄λ ¨ μλ λ°μ΄ν°(μμ±)**μ **κΈ°λ₯(λ©μλ)**λ₯Ό νλλ‘ λ¬Άμ μλ£ κ΅¬μ‘°μ λλ€.
const car = {
brand: "Tesla", // μμ± (property)
speed: 100,
drive: function() { // λ©μλ (method)
console.log("Driving...");
}
};
βοΈ κ°μ²΄λ μ€μνμμμ βμ¬λ¬Όβκ³Ό λΉμ·ν©λλ€.
μ: βμλμ°¨βλ λΈλλ(μμ±)μ μ΄μ (λμ)μ κ°μ§κ³ μμ΅λλ€.
| μμ | μ€λͺ | μμ |
|---|---|---|
| μμ±(Property) | key: value μμΌλ‘ μ 보λ₯Ό μ μ₯ | brand: "Tesla" |
| λ©μλ(Method) | κ°μ²΄ μμ ν¨μ (λμ) | drive: function() {} |
| λ°©μ | μ€λͺ | μμ |
|---|---|---|
| 리ν°λ΄ | κ°μ₯ κ°λ¨ν λ°©μ | const obj = { key: value }; |
| μμ±μ ν¨μ | new Object() μ¬μ© |
const obj = new Object(); |
| ν΄λμ€(ES6) | κ°μ²΄ ν μμ± | class Person { constructor() {} } |
// 리ν°λ΄ λ°©μ
const user = {
name: "Lee",
sayHi: function() {
console.log("Hello");
}
};
// μμ±μ λ°©μ
const user2 = new Object();
user2.name = "Kim";
// ν΄λμ€ λ°©μ
class User {
constructor(name) {
this.name = name;
}
}
const user3 = new User("Park");
| λ°©λ² | λ¬Έλ² | μμ |
|---|---|---|
| μ νκΈ°λ² | obj.key |
user.name |
| λκ΄νΈ νκΈ°λ² | obj["key"] |
user["name"] |
λκ΄νΈ νκΈ°λ²μ ν€κ° λ³μμΌ λ μ μ©ν©λλ€.
const person = {};
person.name = "Lee"; // μΆκ°
person.name = "Kim"; // μμ
delete person.name; // μμ