JavaScript 객체 속성
속성은 JavaScript 객체에서 가장 중요한 부분입니다.
JavaScript 속성
속성은 JavaScript 객체와 관련된 값입니다.
JavaScript 객체는 비정렬 속성 집합입니다.
속성은 일반적으로 수정, 추가, 제거될 수 있지만, 일부 속성은 읽기 전용입니다.
JavaScript 속성에 접근
객체 속성에 접근하는 문법은:
objectName.property // person.age
또는:
objectName[\"property] // person[\"age\"]
또는:
objectName[expression] // x = \"age\"; person[x]
표현식은 속성 이름으로 계산되어야 합니다.
예제 1
person.fname + \" is \" + person.age + \" years old.";
예제 2
person[\"fname\"] + \" is \" + person[\"age\"] + \" years old.";
JavaScript for...in 루프
JavaScript for...in
문장이 객체의 속성을 순회합니다.
문법
for (variable in object) { 실행할 코드 }
for...in
순회 내의 코드 블록은 각 속성에 대해 한 번씩 실행됩니다.
객체의 속성을 순회합니다:
실례
var person = {fname:\"Bill\", lname:\"Gates\", age:62}; for (x in person) { txt += person[x]; }
새로운 속성 추가
존재하는 객체에 새로운 속성을 추가하려면 간단한 할당을 사용할 수 있습니다.
person 객체가 이미 존재하는 경우 - 새로운 속성을 추가할 수 있습니다:
실례
person.nationality = \"English\";
예약어를 속성 이름(또는 메서드 이름)으로 사용할 수 없습니다. JavaScript 이름 규칙을 사용하십시오.
속성 제거
delete
객체에서 속성을 제거하는 키워드:
실례
var person = {fname:\"Bill\", lname:\"Gates\", age:62, eyeColor:\"blue\"}; delete person.age; // 또는 delete person["age"];
delete
키워드는 속성의 값과 속성 자체를 동시에 제거합니다.
삭제가 완료되면, 속성이 추가되기 전까지 사용할 수 없습니다.
delete
오퍼레이터는 객체 속성에 설계되었습니다. 이는 변수나 함수에 영향을 미치지 않습니다.
delete
오퍼레이터는 предопределенные JavaScript 객체 속성에 사용되지 않아야 합니다. 이렇게 하면 애플리케이션이 고장날 수 있습니다.
속성 값
모든 속성은 이름이 있습니다. 또한, 그들은 값도 가지고 있습니다.
값은 속성의 특성 중 하나입니다.
기타 특성에는 쓰일 수 있는, 설정 가능, 쓰일 수 있는 등이 포함됩니다.
이 특성은 속성이 접근되는 방식을 정의합니다(읽을 수 있는지, 쓰일 수 있는지 여부).
JavaScript에서 모든 속성은 읽을 수 있지만, 값만 수정할 수 있습니다(속성이 쓰일 수 있을 때만).
(ECMAScript 5는 모든 속성 특성을 가져오고 설정하는 방법을 가지고 있습니다)
원형 속성
JavaScript 객체는 그들의 원형의 속성을 상속합니다.
delete
키워드는 상속된 속성을 제거하지 않지만, 원형 속성을 제거하면 원형에서 상속된 모든 객체에 영향을 미칩니다.