객체가 무엇인지 이해하기
- 객체란 무엇인가?
- 객체 선언 방법
- 객체의 속성은 무엇인가?
- 객체의 메서드는 무엇인가?
- 예시
객체란 무엇인가?
객체란 키와 값으로 이루어져 있으며 키는 값을 부르기 위한 이름이며 값은 속성과 메서드를 의미합니다. 속성은 객체가 가지고 있는 수치 혹은 값을 의미하고 메서드는 객체가 가지고 있는 함수 혹은 기능이라고 비유할 수 있겠습니다. 객체를 사용하는 이유는 함수를 이용하는 이유처럼 코드의 단순화와 재사용성을 높이기 위하여 사용합니다. 예를 들자면 프로그래밍에서 자동차를 설계한다고 하면 바퀴의 수, 차의 모형, 차의 기능 등을 하나하나 따로 선언하고 자동차가 필요할 때마다 변수를 계속 사용하여 바퀴를 정하고 모형을 정하는 것이 아닌 자동차라는 객체를 선언함으로써 코드를 단순화할 수 있습니다.
객체 선언 방법
배열의 선언은 []를 이용하였다면 객체(object)는 {}를 이용합니다. {} 안에는 키 와 값이 들어가며 값을 부를 이름인 키를 먼저 작성하고 : 뒤에 속성 혹은 메서드가 오게 됩니다.
let object = {
키 : 값;
키 : 값;
}
키 값은 무엇인가?
위에서 설명한 자동차라는 객체를 예로 들자면 바퀴의 수, 탑승 가능한 인원수, 차의 색, 차의 브랜드 등은 '자동차'라는 객체가 가진 키가 됩니다. 바퀴의 수는 4개이고 탑승 가능한 인원수가 5명, 차의 색은 빨강 등 구체적인 수치 등이 값이 됩니다. 따라서 누가 "바퀴의 수는?"이라고 물을 때 사용되는 것이 키이고 "4개야"라고 답할 때 사용되는 것이 값이라고 생각하면 됩니다.
메서드란 무엇인가?
위에서 설명한 자동차라는 객체를 예로 들자면 액셀을 밟으면 속도가 오른다, 브레이크를 밟으면 차가 정지한다, 핸들을 돌리면 차가 회전한다. 등은 '자동차'라는 객체가 가진 메서드가 됩니다. 키 값과 동일하게 자동차를 생성할 때마다 필요한 기능을 전부 구현하였는지 헷갈리는 것을 방지하여 코드에 오류를 줄일 수 있습니다. 또한 메서드는 객체가 가진 함수이므로 필요한 기능을 계속 구현하여 코드의 단순화와 재사용성을 높여줍니다.
예시
//자동차 객체 만들기
let car = {
wheelNum : 4;
carBrand : BMW;
start : function () {
alert(`차를 출발합니다.`);
}
stop : function () {
alert(`차를 멈춥니다.`);
}
}
자동차를 만들 때 바퀴 수와 차 브랜드를 필수로 필요하기에 키로 wheelNum과 carBrand를 주었고 출발과 정지를 위한 키로 start와 stop을 주었습니다. wheelNum의 값으로는 4를 주었고 carBrand의 값으로는 BMW를 주었습니다. 메서드로는 start와 stop을 주었습니다.