클래스, 인스턴스 (Class, Instance)
- 클래스 : 붕어빵 틀
- 인스턴스 : 붕어빵 틀에 찍혀서 나온 붕어빵 (객체와 인스턴스는 유사)
객체 리터럴 (==객체 표현식)
- 객체 자체가 아니라 객체를 정의하는 변수이다. => 그냥 정의된거 사용하는건 가능
- 즉, 붕어빵 틀처럼 새롭게 객체를 찍어내서 생성하는 것이 불가능하다. => (let p = new product()) 불가능
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let product = {
"상품명" : "과자",
eat : function (food) {
alert(`현석이가 ${this.상품명}의 종류인 ${food}을 먹습니다.`);
}, // this는 해당 객체인 product을 의미
"가격" : "1500"
};
product.eat('라면땅');
</script>
</body>
</html>
- this는 해당 객체를 의미
- . 연산자는 접근 연산자
ex) this.상품명 이면, this 객체인 product 객체의 상품명에 접근한다는 의미이다.
내장 객체
- JS에서 자주 사용하는 것을 클래스로 미리 정의해둔 것
- window 객체
웹 브라우저 자체를 의미
내장 객체 중 최상위 객체
- document 객체
DOM 구조에서 body을 의미
- location 객체
페이지 이동과 관련된 객체
- history 객체
- 웹브라우저의 주소 기록(=방문 기록) 정보를 관리하는 객체
- 웹브라우저 앞뒤로 움직일 때 사용