티스토리 뷰

[모던자바스크립트] 객체 (프로퍼티의 속성, 객체 잠그기)

9.4 프로퍼티의 속성

: 'Property' 는 속성 이란 뜻으로, JS에서는 객체 내부의 속성을 의미합니다.

 

// 객체 생성 var ob = {a: 1};

// property 접근하기 ob.a; => 1

// property 수정하기 ob.a = 0; ob.a; => 0;

// property 추가하기 ob.b = 2; ob.b; => 2

// property 삭제하기 delete ob.b; ob.b;  => undefined

 

Property는 총 6가지의 속성을 가지고 있습니다.

  • value
  • get
  • set
  • enumerable
  • writable
  • configurable

value

value는 일단 프로퍼티의 속성값을 말합니다.

value는 단지 값을 의미할뿐 다른 기능은 없습니다.

value에 대한 접근 권한자를 설정하기 위해서 Enumerable, Writable, Configurable를 이용할 수 있습니다.

 

get & set

get & set 은 ES6에서 부터 나오기 시작한 문법으로

객체의 속성값에 대한 접근 권한자 역할을 할 수 있습니다.

그렇기 때문에 get & set 과 wriatable 속성을 함께 줄 수 없습니다.

get & set 자체로 writable의 역할을 가지고 있기 때문입니다.

 

 

enumerable (열거 가능)

만약 해당 property가 열거할 수 있는 속성이라면,

for...in... 루프를 사용하여 그것들에 접근할 수 있습니다.

또한 개체의 열거 가능한 속성의 키는 Object.keys 메서드를 이용해 반환 받을 수 있습니다.

즉, 조회가능여부와 열거가능여부는 엄연히 다릅니다.

 

wriatable (쓸기 가능)

만약 property가 쓸 수 있는 속성이라면, 값을 수정할 수 있습니다.

obj.a = 10 과같이 수정할 수 있습니다.

 

 

 

configurable (구성할 수 있는 (재정의 가능))

구성 가능한 property는 삭제 연산자를 사용하여 제거 할 수있는 여부를 의미합니다.

delete obj.a; 다음 명령어를 사용할 수 있는가 여부를 나타냅니다.

 

See the Pen 프로퍼티 속성 by jeongahlee (@jeongahlee) on CodePen.

 

 

 

9.5 프로퍼티가 있는지 확인하기

 

 

See the Pen [javascript] 프로퍼티가 있는지 확인하기 by jeongahlee (@jeongahlee) on CodePen.

 

 

9.7 객체 잠그기

: 객체를 잠가 수정할 수 없게 만드는 방법

 

See the Pen [javascript] 객체 잠그기 by jeongahlee (@jeongahlee) on CodePen.

 

참고 사이트 :  https://moonscode.tistory.com/6

'JAVASCRIPT' 카테고리의 다른 글

[Javascript] gallary view  (0) 2020.05.13
[Javascript] 정규표현식  (0) 2020.05.10
[Javascript] 버그와 오류에 대처하는 방법  (0) 2020.04.26
[Javascript] 고차함수  (0) 2020.04.19
[Javascript] 객체로서의 함수  (0) 2020.04.19
댓글
© 2018 eh2world