속성과 메서드를 분류
속성값은 매번 다른 값으로 바뀌지만 메서드는 매번 동일한 함수가 생성
메모리 공간의 낭비가 된다.
메모리 공간의 낭비를 줄이기 위해 메서드를 프로토타입으로 옮긴다.
Student객체에는
이름, 수학, 영어, 과학
Student.prototype
getSum()
gerAverage()
toString()이 저장된다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
<script>
function Student(name, korean, math, english) {
this.이름 = name;
this.국어 = korean;
this.수학 = math;
this.영어 = english;
}
Student.prototype.getSum = function () {
return this.국어 + this.수학 + this.영어;
};
Student.prototype.getAverage = function () {
return this.getSum() / 3;
};
Student.prototype.toString = function () {
return this.이름 + '\t' + this.getSum() + '\t' + this.getAverage();
};
</script>
| cs |
이처럼 속성과 메서드를 설정해줄수 있다.
1
2
3
4
5
6
7
8
9
10
11
12
|
var student=[];
student.push(new Student('멍개', 100, 100, 100));
student.push(new Student('짱수', 90, 90, 90));
var output='';
for (var i in student) {
output += student[i].toString() + '\n';
}
alert(output);
| cs |
개체를 생성하고 문자열을 만들고 출력을 해보면...........
잘된다.
댓글
댓글 쓰기