속성 제거
객체의 프로퍼티를 delete연산자를 이용해 즉시 제거할 수 있습니다.
delete연산자는 객체의 프로퍼티를 삭제할 뿐, 객체 자체를 삭제하지는 못합니다.
소스 코드
//빈
객체
생성
var student = {};
//객체에
속성
추가
student.name =
'홍길동';
student.hobby =
'피아노';
student.specialty =
'자바';
student.willjob =
'프로그래머';
document.write('<br>====================================<br>');
//객체의
메소드
추가
student.toString =
function(){ //속성의
명세
호출하기
var msg =
'';
for(var key in
this){ //this: 객체
안에서
객체
참조
if(key!='toString'){
msg += key +
' : '
+
this[key] +
'<br>';
}
}
return msg;
};
//출력
document.write(student +
'<br>');
소스 코드
document.write('<br> 속성
제거====================================<br>');
//속성
제거
//delete student.hobby; 동일
delete(student.hobby);
document.write(student +
'<br>');
객체 삭제 시도
delete는 프로퍼티만 제거하고 객체는 제거하지 않습니다.
객체가 삭제되지 않아 student객체의 값이 그대로 출력된 것을 확인할 수 있습니다.
//객체
삭제
시도
delete student;
document.write(student + '<br>');
|
전체 소스
<html>
<head>
<meta charset="UTF-8">
<title>속성
제거</title>
<script type="text/javascript">
//빈
객체
생성
var student = {};
//객체에
속성
추가
student.name = '홍길동';
student.hobby = '피아노';
student.specialty = '자바';
student.willjob = '프로그래머';
document.write('<br>====================================<br>');
//객체의
메소드
추가
student.toString = function(){ //속성의
명세
호출하기
var msg = '';
for(var key in this){ //this: 객체
안에서
객체
참조
if(key!='toString'){
msg += key + ' : ' + this[key] + '<br>';
}
}
return msg;
};
//출력
document.write(student + '<br>');
document.write('<br> 속성
제거====================================<br>');
//속성
제거
//delete student.hobby; 동일
delete(student.hobby);
document.write(student + '<br>');
document.write('<br> 객체
삭제
시도====================================<br>');
//객체
삭제
시도
delete student;
document.write(student + '<br>');
</script>
</head>
<body>
</body>
</html>
|
댓글을 달아 주세요