객체(메서드)
1. 객체(메서드)
- 메모리에 저장된 자료 구조
- 속성(상태, 값)과 기능(메서드)을 가지고 있다.
- 객체가 대입된 변수는 참조 변수라고 부른다.
- 키와 값 한 쌍으로 값 및 메서드 정의 가능({key : value})
1) 객체의 선언
▼ 값이 없는 객체 선언 방식

▼ 값이 있는 객체 선언 방식 및 접근방법

2) 객체에 값 대입하기

>>> 도트연산자(.)이나 [ ]를 이용하여 값을 대입할수 있음. 순서대로 출력되기때문에 obj05의 값이 이순신이였지만 이후에 대입된 고길동 값으로 변했다. (객체가 아닌 대상에는 도트연산자를 활용할 수 없다.)
3. this
- 메서드 내에서 사용되며, 객체 자신을 가리킨다.(메서드 밖에서는 사용 x)

>>> 해당 입력처럼 this.을 입력해주지않으면 오류가 발생한다.
4. 체이닝 기법
- 멤버 호출시 마지막에 나열된 멤버가 객체가 리턴이된다면 그 객체의 멤버를 호출 - 마지막에 도달된 값이 반환

>>> 메서드 내의 모든 객체에 도트 연산자를 이용해서 접근할 수 있다.
5. 객체 활용

>>> 출력결과 : 먼저 myObj 매서드의 addNum함수를 실행할때 인자로 10, 20, 30을 건내주면
addNum 함수에서 인수n에 해당 인자들을 받고 arr에 입력을하고 리턴을 한다. 그리고 console.log가
실행되는데 arr에 값이 입력되어있기때문에 해당 함수에 기입된 구문을 이행하여 위와같은 결과가 나온다.
6. 객체 실습문제
실습1.

>>> 출력결과 : student 메서드를 선언하면서 내부에 빈값을 가진 공간을 만들어줬다.
도트연산자를 이용해서 student안에 존재하는 공간에 값을 대입한다.
출력이 먼저실행됬기때문에 출력되지않지만 이후 객체에는 값이 담겨있다.
실습2. 회원의 이름을 저장 할 수 있는 필드, 회원 이름을 가지고 올 수 있는 메서드를 가진
객체를 생성하여라.

>>> 출력결과 : userName의 빈공간에있는 함수를 받고 리턴해주는 getUserName을
만들고 실행하였다.
실습3.

>>> 출력결과 : gugu객체에 함수와 숫자를받는 필드를 만들고 숫자를 받는필드에 숫자가 들어왔을때 함수로 전달해서 구구단을 출력할수 있도록 하였다.
실습4.

>>> 출력결과 : arr 배열 필드의 값을 getScore함수 필드에서 받아서 console.log실행부에 getScore
에 인자값을 보냈을때 그 인자값을 인수에 대입하여 학생의 점수를 받아내는 객체를 생성하였다.
실습5.



>>> 출력결과 : arrScore에 배열값을 대입받아서 그 배열값을 arr에 push해준다.
그이후 getAvg함수필드에서 배열의 합을구해서 평균을 리턴한다.
최고점수는 변수를 0으로 선언하여 그변수보다 큰값을 변수에 저장하는 방식으로 for문을 사용하여
최고값을 구하였고, 최저점수는 변수를 배열arr의 첫번째값으로 선언하여 해당값보다 작은값이 있으면
변수에 저장하는 방식으로 최고값을 구하였다. 그렇게 구한 최고값 최저값으로 학생명을 리턴해준다.
실습6. 자동차를 객체로 표현하여라.
(이동 -> 기능, 이동거리 -> 값)
(이동에 관련된 메서드 실행시 이동 거리값이 누적되도록)

실습7. 학생의 정보를 담을 수 있는 객체 선언
1. addStudent 메서드 실행시 학생 정보를 저장(학생나이, 학생명)
2. getStudent 메서드 실행시 저장된 학생 정보 전체 가지고 오기
