객체는 이름과 값으로 구성된 프로퍼티들의 집합이라고 할 수 있다.
let plan1 = {
name : 'Basic',
price : 3.99,
space : 100,
transfer : 1000,
pages : 10
};
:
(콜론)으로 구분한다.,
(쉼표)를 붙인다.마침표 .
연산자를 사용하며, 접근하려는 객체명은 왼쪽에, 프로퍼티명은 오른쪽에 위치합니다.
대괄호 []
를 사용하여, 접근하려는 객체명은 왼쪽에, 프로퍼티명은 쌍따옴표 ""
와 함께 대괄호 안에 작성합니다.
let plan1 = {
name: 'Basic'
};
프로퍼티 값 접근방법
1. (.) 연산자 사용 : console.log(plan1.name);
2. ([]) 사용 : console.log(plan1['name']);
대괄호 안에는 변수가 들어갈 수 있습니다!
예제 1)
let planB = {
name : 'first'
};
let last = 'name'; //변수 last의 값으로 이름이 같은 'name'할당
console.log(planB[last]);
예제 2)
let person = {
name : 'john',
age : 22,
job : {
jobTwo : 'police'
}
}
let change = 'job' //값으로 프로퍼티와 동일한 값을 변수에 할당
console.log(person['name']);
console.log(person.age);
//[]로 변수를 프로퍼티에 접근이 가능한 예시
console.log(person[change][change + 'Two']);
// . 연산자는 변수로 프로퍼티에 접근이 불가
console.log(person.job.jobTwo);
/code
let person = {
name : 'john'
job : {
jobTwo : 'police'
}
}
let chn = 'name'
//1. .으로 접근
console.log(person.name = 'jeon'); //jeon
//2. [] 변수로 접근
console.log(person[chn] = 'john'); // john
//3. 새 값을 추가
console.log(person[chn + '1'] = ['jeon','john']);
혹은 새로운 프로퍼티를 추가할 수도 있습니다.
chn = 'job'; //job key로 변경
person[chn] = [3,6,9]; // job 의 value 값이 [3,6,9]로 변경
console.log(person[chn]);
//배열 요소 가져오기
console.log(person.job[0]); // 3
console.log(person[chn][1]); // 6
let objData = {
name: 50,
address: {
email: "gaebal@gmail.com",
home: "위워크 선릉2호점"
},
books: {
year: [2019, 2018, 2006],
info: [{
name: "JS Guide",
price: 9000
}, {
name: "HTML Guide",
price: 19000,
author: "Kim, gae bal"
}]
}
//"HTML Guide" 에 접근해보자
console.log(objData.books.info[1].name)
console.log(objData['books']['info'][1].name)
좋은 정보 감사합니다.