JS Array VS Object
![](https://t1.daumcdn.net/cfile/tistory/997DD5415C9979DA0B)
배열과 객체(Object)의 차이
예를들어,
배열 선언은 ex) const info = ["book", "read"]; ////// Object 선언은 const info = {"book", "read"} 이라할 때,
Object로 선언한 info를 console.log로 찍어보면 SyntaxError: Unexpected token 에러가 뜬다.
즉, Object를 배열처럼 {} 안에다가 "" , "" 로 선언할 수 없다는 뜻.
참고로 배열은 [] 괄호로, Object는 {}로 사용한다.
Object는 실제 객체를 만드는 것.
ex) const info = {
name:"park",
gender:"male"
}
이렇게 변수와 값을 넣어주고 console.log(info)를 찍어보면 {name: "park", gender: "male}가 출력이 된다.
근데 나는 name만 출력하고 싶어...
그러면 console.log(info.name); 이라고 찍으면 콘솔에는 park이 출력된다.
만약에 내가 name을 park이 아닌 kim 으로 바꾸고 싶으면 기존에
ex) const info = {
name:"park",
gender:"male"
}
info.name = 'kim';
console.log(info.name); 이라고 바꾸면 된다.
하지만 info 자체를 바꿀 수는 없다는 점은 꼭 알아두길 바란다.
ex) info = "park"; (x)
우리는 한 사람의 정보를 여러개 저장해야할 경우가 생길텐데 그때, Object안에 Array를 넣어서 사용한다.
ex) const info = {
name:"park",
gender:"male",
hobby: ["movie", "sing", "computergame"], //배열의 Object
favFood: [
{
name:"rice",
fatty:false
},
{
name:"Cheese burger",
fatty:true
}] // Object의 배열
}
console.log(info) 출력
{ name: 'park',
gender: 'male',
hobby: [ 'movie', 'sing', 'computergame' ],
favFood:
[ { name: 'rice', fatty: false },
{ name: 'Cheese burger', fatty: true } ] }
이 안에서 name이 'rice'를 뽑으려면 어떻게 해야할까? 그것은 본인에게 맞기겠습니다.
*참고) 자바스크립트 배열이란?
https://docu94.tistory.com/53