자바스크립트 객체 속성

속성(Properties)은 모든 자바스크립트 객체에서 가장 중요한 부분입니다.


자바스크립트 속성(Properties)

속성은 자바스크립트 객체와 관련된 값입니다.

자바스크립트 객체는 정렬되지 않은 속성의 모음입니다.

속성은 일반적으로 변경, 추가 및 삭제할 수 있지만, 일부는 읽기 전용(read only)입니다.


자바스크립트 속성에 액세스

객체의 속성에 액세스하는 구문은 다음과 같습니다:

또는

또는

Example 1

객체 속성에 액세스하는 2가지 방법이 있습니다:

.property 또는 [“property”].를 사용할 수 있습니다.

John is 50 years old.

Example 2

John is 50 years old.


자바스크립트 for…in 루프(Loop)

자바스크립트 for … in 문은 객체의 속성을 반복합니다(loops through).

Syntax

for … in 루프 내부의 코드 블록은 각 속성에 대해 한 번 실행됩니다.

객체의 속성을 반복 실행(Looping through):

Example

John Doe 25


새 속성(Properties) 추가

기존 객체에, 간단하게 값을 부여하여, 새 객체를 추가할 수 있습니다.

person 객체가 이미 있다고 가정합니다 – 그런 다음 새 객체를 부여할 수 있습니다:

Example

John is English.


속성 삭제

delete 키워드는 객체에서 속성을 삭제합니다:

Example

John is undefined years old.

delete 키워드는 속성 값과 속성 자체를 모두(both the value of the property and the property itself) 삭제합니다.

삭제 후에, 다시 추가하기 전에는, 속성을 사용할 수 없습니다.

delete 연산자는 객체 속성에서 사용하도록 설계되었습니다. 변수 또는 함수에는 영향을 미치지 않습니다.

사전 정의 된 자바스크립트 객체 속성(predefined JavaScript object
properties)에는 delete 연산자를 사용하면 안됩니다. 그것은 응용 프로그램을 다운시킬 수 있습니다.


속성(Property)의 속성(Attributes)

모든 속성에는 이름이 있습니다. 이 속성 또한 값을 가집니다.

값은 속성의 속성(property’s attributes) 중 하나입니다.

다른 속성(attributes)은: 열거 가능, 구성 가능 및 쓰기 가능(enumerable, configurable, and writable)입니다.

이 속성(attributes)은 속성(property)에 액세스할 수 있는 방법을 정의합니다 (읽기 가능합니까? 쓰기 가능합니까?).

자바스크립트에서는 모든 속성(attributes)은 읽을 수 있지만 value 속성(value attribute) 만 변경할 수 있습니다 (속성(property)이 쓰기가능인(writable) 경우에만 가능).

(ECMAScript 5에는 모든 속성의 속성(property attributes)을 가져오고 설정하는(getting and setting) 메소드가 있습니다.)


프로토타입 속성(Prototype Properties)

자바스크립트 객체는 해당 프로토타입의 속성을 상속받습니다(inherit the properties of their prototype).

delete 키워드는 상속된 속성을 삭제하지 않지만, prototype 속성(property)을 삭제하면 프로토타입에서 상속 된 모든 객체에 영향을 줍니다.

출처: JavaScript Object Properties

댓글 남기기