Javascript Assignment 32 - [왜 객체를 써야 할까요?]
객체는 자바스크립트 데이터 타입 중의 하나입니다. 영어로는 object라고 표현합니다.
key값과 value값을 쌍으로 이루어져 있고, 배열과는 다르게 순서가 중요하지 않습니다.
예를 들어 다음과 같은 배열이 있다고 생각해봅시다.
const person1 = ['곽철용', 'AB형', 'ENFP', '바닐라라떼'];
위의 배열에는 특정 사람의 이름과 혈액형, MBTI, 좋아하는 커피에 대한 정보가 담겨있습니다.
우리가 원하는 정보를 얻기 위해서는 해당 배열에 있는 Index number를 기억해야 합니다.
또 다른 사람이 있다고 생각해봅시다.
const person2 = ['아이스아메리카노', 'INTP', '홍혁팔', 'O형'];
person2는 person1의 정보와 다른 순서로 값이 뒤섞여 있습니다.
사람이 두 명일 때는 괜찮지만, 100명이라면 어떻게 될까요? 자료를 처리하기 힘들어지겠죠?
그래서 나온 개념이 바로 객체입니다.
객체만들기
객체를 생성할 때는 {} 안에 key와 value를 쌍으로 묶어서 만들어 줍니다.
key값이 여러개일 때는 쉼표(,)로 구분해줍니다. 객체를 만드는 방법은 여러가지인데
그 중에 아래와 같이 중괄호를 이용해 만드는 방식을 Object Literal 이라고 합니다.
예시)
const person1 = {
name: '곽철용',
bloodType: 'AB형',
mbti: 'ENFP',
favoriteCoffee: '바닐라라떼'
}
객체로 표현하면 순서가 없기 때문에 index number를 기억하지 않아도 됩니다.
우리가 원하는 정보의 key값만 알면 정보에 접근할 수 있습니다.
myself라는 이름의 객체가 있습니다.
1. 본인의 이름, 혈액형, mbti, 좋아하는 커피를 토대로 객체를 만들어보세요!
- key 값으로는 name, bloodType, mbti, favoriteCoffee를 입력해주세요!
- key 값에 오타가 발생하면 채점에 문제가 생길 수 있습니다.
function iAmGround() {
let myself = {
name: "Seong Ho Kim",
bloodType: "+AB",
mbtl: "ISFJ",
favoriteCoffee: "Ice americano"
}
return myself;
}
console.log(iAmGround()); // { bloodType: "+AB", favoriteCoffee: "Ice americano", mbtl: "ISFJ", name: "Seong Ho Kim" }
2. 프론트앤드 개발자로 근무하고 있는 당신은 인적정보를
수정하기 위해 설정창에 들어가 정보를 적던중 눈에 띄는 새로운
인적사항을 확인하게 됩니다. 이때, 인적정보중에 해당객체만
따로 출력하세요
- developerInfo 라는 함수를 만들어 주세요
- develop_myself 라는 변수를 만들어 객체로 할당시켜 주세요
- 객체 전체가 아닌 해당 객체 value만 접근해서 출력해야 합니다.
힌트)
- 출력하고자 하는 객체 value에 배열 index와 관련있습니다.
const developerInfo = () => {
let develop_myself = [{
name : "Wecode Kim",
mbti : "ISTJ",
favoriteFood : ["마라탕","마파두부","멘보샤"]
}]
return develop_myself[0].favoriteFood[2];
}
console.log(developerInfo()); // "멘보샤"