일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- 한글입력 오류
- 핵심만 골라 배우는 SwiftUI 기반의 iOS 프로그래밍
- python tkinter 인터페이스
- 기획자랑 사이좋게 지내고 싶다
- 한글입력 잘림
- python GUI 사용하기
- jquery 사용하기
- 자바스크립트 객체
- 닐 스미스 지음
- 한글잘림
- max apache
- 배열 분해 할당
- 생활코딩
- 황반석 옮김
- 한글입력 안됨
- 비주얼스튜디오 코드
- 자바스크립트 배열 할당
- 자바스크립트 객체 만들기
- 객체지향
- 객체
- 한글입력 씹힘
- 맥 아파치
- 블록 스코프
- 제이쿼리연결
- SwiftUI 기반의 iOS 프로그래밍
- 자바스크립트 class
- 자바스크립트
- 제이펍 출판
- 맥 mysql
- max MySQL
Archives
- Today
- Total
반응형
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- 한글입력 오류
- 핵심만 골라 배우는 SwiftUI 기반의 iOS 프로그래밍
- python tkinter 인터페이스
- 기획자랑 사이좋게 지내고 싶다
- 한글입력 잘림
- python GUI 사용하기
- jquery 사용하기
- 자바스크립트 객체
- 닐 스미스 지음
- 한글잘림
- max apache
- 배열 분해 할당
- 생활코딩
- 황반석 옮김
- 한글입력 안됨
- 비주얼스튜디오 코드
- 자바스크립트 배열 할당
- 자바스크립트 객체 만들기
- 객체지향
- 객체
- 한글입력 씹힘
- 맥 아파치
- 블록 스코프
- 제이쿼리연결
- SwiftUI 기반의 iOS 프로그래밍
- 자바스크립트 class
- 자바스크립트
- 제이펍 출판
- 맥 mysql
- max MySQL
Archives
- Today
- Total
java,javascript,android,php,sql,공부용,메모용
prototype 프로토타입 만들기, 객체 재사용 - 객체지향 자바스크립트 05 본문
반응형
프로토타입 의미
객체 내의 함수를 객체의 밖에서 사용하여 모든 객체가 사용할 수 있는 함수로 만든다
프로토타입을 사용하지 않으면??
객체 안에 함수가 계속 생성이 되는데 시간,비용,메모리 사용량이 들어간다
프로토타입을 통해 어떻게 극복하는가?
객체의 밖에서 함수를 객체 안에 프로토타입으로 정의하여 함수를 만든다
객체들이 공통적으로 사용하는 함수를 정의함으로 객체 생성시에 계속 생성되는 과정을 생략하고
단 한번의 포로토타입 함수 생성으로 시간,비용,메모리를 절약한다
// 생성자 함수
// constructor : new를 붙이면 객체를 생성하는 생성자가 된다
// 객체를 함수로 만들기
// 객체 안에 함수가 계속 생성이 되는데 시간,비용,메모리 사용량이 들어간다
function Person(name,first,second){
this.name = name;
this.first = first;
this.second = second;
// this.sum = function(){
// return this.first+this.second;
// }
}
// 3.
// prototype 으로 객체의 함수 만들기
// 단 한번만 실행된다 -> 메모리 절약 시간 절약
Person.prototype.sum = function(){
//return this.first+this.second;
return 'prototype : '+ (this.first+this.second);
}
var kim = new Person('kim', 10, 20);
// 4.
// 객체가 무수히 많을 때 하나의 객체에만 다른sum 함수를 주고싶다.
kim.sum = function(){
return 'this : '+ (this.first+this.second);
}
// 1.
// ex sum을 바꾸고싶다
// kim.sum = function(){
// return 'modified : '+ (this.first+this.second);
// }
// 2. 근데 lee.sum 도 바꾸고싶다 그럼 또 이걸 써야하는데.....
// 객체 공통적으로 사용되는 속성을 가진 함수를 만들고 싶다
var lee = new Person('lee', 10, 10);
// lee.sum = function(){
// return 'modified : '+ (this.first+this.second);
// }
// lee 안에 함수가있는지 찾고 없으면 생성자안에 prototype에 sum() 함수가 있는지 찾는다
console.log("kim.sum()", kim.sum());
console.log("lee.sum()", lee.sum());
반응형
'javascript, jQuery & Node.js' 카테고리의 다른 글
class extends 클래스 상속, 자바스크립트 상속 - 객체지향 자바스크립트 07 (0) | 2022.04.25 |
---|---|
constructor 초기화 / 컨스트럭터 초기화, 자바스크립트 class / classes - 객체지향 자바스크립트 06 (0) | 2022.04.25 |
생성자, 생성자함수, constructor 여러 객체를 하나로 사용하기 객체 1개로 재사용 - 객체지향 자바스크립트 04 (0) | 2022.04.25 |
객체사용 this - 객체지향 자바스크립트 03 (0) | 2022.04.25 |
배열과 객체 - 객체지향 자바스크립트 02 (0) | 2022.04.25 |
Comments