판다꼬마
2022. 5. 15. 21:50
728x90
let person = {
key: "value", //프로퍼티 (객체 프로퍼티)
key1: "value2",
key2: true,
key3: undefined
};
객체 리터럴 방식
객체는 비 원시자료형, 여러 가지 자료형을 가질 수 있다.
key: "value",
왼쪽에 키, 오른쪽에 벨류로 구성 되면
프로퍼티 (객체 프로퍼티)
벨류에는 어떤 자료형이 와도 상관이 없다.
키는 반드시 문자열로 구성되어야 한다. ""는 사용 x
console.log(person.key1); 점표 기법
console.log(person ["key3"]); 괄호 표기법
person.location = "123";
person ["gigi"] = "3333";
이렇게 값을 객체에 추가도 가능하고
person.key="ghghgh";
로 수정도 가능하다
delete person ["key"];
삭제도 가능하다
이렇게 삭제해도 메모리에 연결을 지우지 않으므로
person.key=null;
로 삭제를 하면 메모리에서 날릴 수 있어서 이렇게 삭제하는 것이 더 좋다.
let person = {
name: "추성준",
age: 24,
say: function () {
console.log(`안녕 나는 ${person["name"]}`);
//console.log(`안녕 나는 ${this.name}`);
//이것도 위와 같은 코드이다.
}
};
이렇게 객체를 만들면 name이 바뀌어도 계속 바뀌면서 호출을 할 수 있다.
console.log(`name: ${"name" in person}`);
이 의미는person객체 안에 name이라는 키를 가지는 프로퍼티가 있냐? 라는 의미이다.
console.log(`name: ${"gender" in person}`);
이렇게 작성을 하면 person 객체안에 gender라는 프로퍼티가 없으므로 false를 반환한다.
728x90