sim7688
2020. 8. 2. 21:52
728x90
반응형
객체는 함수도 담을 수 있다.
coworkers.showAll = function(){
}
= var showAll =function(){
}
= function showAll(){
}
이렇게 정의할 수도 있다
그럼 이렇게 showAll 이라는 함수에
for(var key in coworkers){
document.write(key + " : "+ coworkers[key] +'<br>');
}
를 넣을 것이다.
coworkers에 있는 각각에 데이터들을 iterater해서 화면에 출력하는 코드를 넣은 것이다.
coworkers.showAll = function(){
for(var key in coworkers){
document.write(key + " : "+ coworkers[key] +'<br>');
}
}
그런데 이게 그렇게 좋은 방법은 아니다
그 이유는 coworkers라는 이 이름이 여기에 박혀있기 때문에 만약 객체의 이름이 바뀌면 가져오지 못하는 현상이 있을 수 있다.
그런 경우에는 showAll이라는 함수 안에서 이 함수가 소속되어있는 객체를 가르키는 약속된 기호가 있는데
그것이 바로 this이다. (this는 자기 자신을 가르킴)
객체에 소속된 함수를 method라고 하고 객체의 소속된 변수를 property라고 한다
728x90
반응형