//dog는 객체이고, 어떤 클래스의 인스턴스도아니다.
let dog = {
name:'루시',
age:13,
'dog-weight':3.5, //특수문자 쓸때 ''필요!
['dog-height']:0.8 //속성접근
}
console.log(dog.name);
console.log(dog['age']);
dog.family = '포메'; //필드 추가하기
console.log(dog.family);
console.log(dog['family']);
delete dog['dog-height'];
console.log(dog['dog-height']);
console.log('------------------------');
// 동적으로 속성에 접근하고 싶을 때
// 동적으로 속성에 접근하고 싶을 때
function getValue(obj, key){
//dog.name 강아지 이름 출력하고싶을때
return obj[key];
}
console.log(getValue(dog, 'name'));
// 필드 추가
// add Key
// obj, 필드명, 값
// 필드를 삭제
//deleteKey
// obj, 키
function addKey(obj, key, value){
obj[key] = value;
}
function deleteKey(obj, key){
delete obj[key];
}
addKey(dog, 'dog-height',0.7);
console.log(dog);
deleteKey(dog, 'dog-height');
console.log(dog);
console.log('------------------------');
루시
// {name: '루시',age: 13,'dog-weight': 3.5,family: '포메','dog-height': 0.7}
// { name: '루시', age: 13, 'dog-weight': 3.5, family: '포메' }
const x= 0;
const y= 0;
// const coord ={x: x, y: y}; //키값이 x 키값이 y
const coord = {x,y};
console.log(coord);
// { x: 0, y: 0 }
//객체 생성 함수
//객체 생성 함수
function makeObj(name, age){
return{
name, age
};
}
console.log(makeObj('apple', 20));
//생성자
const apple = { //객체
name:'apple',
display: function(){
console.log(`${this.name}:⚽`);
}
}
const orange = { //객체
name: 'orange',
display: function(){
console.log(`${this.name}:⚾`);
}
}
console.log(apple);
apple.display();
console.log(orange);
orange.display();
// { name: 'apple', age: 20 }
// { name: 'apple', display: [Function: display] }
apple:⚽
// { name: 'orange', display: [Function: display] }
orange:⚾