속성 을 정의할 수 있습니다. 점 을 사용하는 개체 및 대괄호 표기법. Object.defineProperty() 속성을 정의하는 데 사용됩니다. 일반적으로 개체 이름, 속성 이름, 속성 설명자의 3가지 매개변수를 사용합니다.
구문
Object.defineProperty(object name, property name, property descriptor)
이 방법으로 속성을 정의합시다.
예시
다음 예에서 처음에 개체에는 'one이라는 속성이 하나만 있습니다. '. 나중에 'two라는 다른 속성 '가 추가됩니다. 이제 모든 속성을 표시하려고 하면 출력에 표시된 것처럼 첫 번째 속성만 표시되고 추가된 속성은 표시되지 않습니다.
<html> <body> <script> var object = {one: 1}; Object.defineProperty( object, 'two', { value: 2 } ); document.write(JSON.stringify(object)); </script> </body> </html>
출력
{"one":1}
이것은 모두 "열거할 수 있는 " 속성. "열거 가능 " 속성은 개체의 속성을 정의하려면 true여야 합니다. 그러나 "열거 가능 "는 "거짓" 값을 취합니다. 선언하지 않았을 때. 따라서 값을 "true로 만들려면 " 우리는 "열거 가능으로 선언해야 합니다. " 및 "true" 할당 필요 .
다음 예에서 "열거 가능 "가 초기화되고 값이 true로 할당됩니다. , 모든 속성이 출력에 표시된 대로 표시되었습니다.
예시
<html> <body> <script> var object = {one: 1}; Object.defineProperty( object, 'two', { value: 2, enumerable: true } ); document.write(JSON.stringify(object)); </script> </body> </html>
출력
{"one":1,"two":2}