1. 소스 코드 문제점 제시
다음 코드를 보고 문제점을 짚어보자
모든 학생 객체가 show_info, get_total_sum, get_average라는 메소드가 같은 기능을 하는데도 불구하고
별도의 메모리를 다 할당받는다. (메모리 낭비 쓰레기..)
개개인의 이름, 수학, 영어 점수는 다르지만
"모든 객체가 공통의 메소드를 공유할 수 없을까?" 에서 나온것이 Prototype Method!
메모리 절약에 아주 특효약
Javascript는 이 프로토타입을 생성하기를 적극 권장하는 언어이고
대부분의 API 보면 Prototype이 아주 자주 등장한다.
모든 Javascript 메소드는 Prototype Object를 갖는다.
객체별 메소드 재정의가 용이하여 메소드를 커스터마이징 할 수 있어 유지보수에도 유용하다.
2. Method Customizing Example
이로서 prototype이 정의되어 있는 상태에서
특정 Object의 Method를 재정의함으로써 Customizing 하는 방법도 살펴보았다.
'Web > Javascript' 카테고리의 다른 글
[JavaScript] 배열 특정원소 삭제 (0) | 2020.01.26 |
---|---|
[Javascript] typeof vs constructor (0) | 2020.01.25 |
JavaScript constructor, instanceof (0) | 2020.01.24 |
primitive vs object (0) | 2020.01.24 |
Error : Property 속성 이름에 '/'가 포함된 경우 (0) | 2020.01.17 |