동적 객체의 속성 변경, 속성 추가 / 속성 갱신, 속성 제거

CODEDRAGON Development/JavaScript, jQuery, ...

반응형


 

 

동적 객체의 속성 변경

처음 객체를 생성하는 시점 이후에 객체의 속성 메서드 추가하거나 제거할 있습니다.

·       속성 추가  / 속성 갱신

·       속성 제거

·       메서드 추가

 

 

 

 

속성 추가  / 속성 갱신

·       대괄호 표기법 혹은 마침표 표기법을 이용하여 값을 할당할 경우의 속성

·       속성 추가

·       속성 갱신

 

 

대괄호 표기법 혹은 마침표 표기법을 이용하여 값을 할당할 경우의 속성

 

구분

설명

해당 속성이 존재하면

·       속성 변경

·       해당 속성의 속성값이 변경됩니다.

해당 속성이 존재하지 않으면

·       속성 추가

·       해당 속성이 동적으로 생성된 값을 할당합니다.

 

 

속성 추가

//객체 생성

var student = {};

 

//객체에 속성 추가

student.이름 = '홍길동';

student.취미 = '악기';

student.특기 = '프로그래밍';

student.장래희망 = '프로그래머';

 

 

 

속성 갱신

//이미 '취미'라는 프로퍼티가 존재하므로 해당 값이 갱신됨

student.취미='댄스';

 

//프로퍼티가 존재하지 않으므로 '나이'라는 프로퍼티가 동적으로 생성된 다음, 33이라는 값이 할당됨

student.나이 = 33;

 

 

 

 

 

속성 제거

·       객체의 프로퍼티를 delete연산자를 이용해 즉시 제거할 있습니다.

·       delete 키워드 뒤에 제거하고자 하는 속성을 괄호를 이용하거나 괄호없이 속성만 입력하여 속성을 제거할 있습니다.

·       delete연산자는 객체의 프로퍼티를 삭제 , 객체 자체를 삭제하지는 못합니다.

·       메서드도 객체의 속성이므로 동적으로 제거될 있습니다.

 

delete(객체['속성명']);

delete(객체.속성명);

 

 

delete(student.취미);

 

 

 

 

 

메서드 추가

'.' 이용하여 추가합니다.

 

객체.메소드명 = function(){

수행할 문장;

}

 

 

//객체 생성

var student = {};

 

student.greet = function() {

return 'Hello students!!';

};

 

 

 delete(객체.메소드명);