설명 : 개체 속성의 객체에 대한 설명.
OBJ = {foo는 : (123)를 보자 };
CONSOLE.LOG (Object.getOwnPropertyDescriptor (OBJ, 'foo는'))
결과 표시 :
{ 구성 : 사실 열거 : 진정한 가치 : 123 쓰기 : 사실 __proto__ : 개체 }
현재 네 개의 운영이 무시가 열거가 잘못된 속성입니다.
- 용 루프 : 만 개체 자체 및 상속 열거 속성을 통과.
- Object.keys는 () : 모든 키 열거 속성의 개체 자체의 이름을 돌려줍니다. 사용이 개체를 통과!
- JSON.stringify () : 만 개체 자체는 열거 속성을 직렬화 할 수있다.
- Object.assign () : 열거 속성을 무시 객체의 자신의 열거 속성의 거짓 만 카피
Object.getOwnPropertyDescriptor (Object.prototype에 'toString'). Enumerable에서 // false로 Object.getOwnPropertyDescriptor ([], '길이'). Enumerable에서 // false로 //의 toString Enumerable에서, 길이 속성은 이처럼, 거짓 ... 모두가 프로토 타입 속성에서 상속 통과하지.
const를 OBJ = {foo는 : 123,받을 줄 () { 반환 'ABC' }}; Object.getOwnPropertyDescriptors (OBJ) // {foo는 : // {값 : 123, // 쓰기 : 사실, // 열거 : 사실 // 구성 : TRUE}, // 막대 : // {얻을 : [기능 : 바 ]은, // 설정 : 정의되지 않은, // 열거 : 사실 // 구성 : TRUE}}
// 형식 Object.setPrototypeOf (개체 프로토 타입) // 사용 CONST = O Object.setPrototypeOf ({}, 널 (null) ); // 이 방법은 다음과 같은 기능에 해당합니다. 함수 (OBJ, 프로토) { OBJ .__ proto__ = 프로토; 리턴 OBJ; }
예를 들면 :
따라서 년 = {}; 년 OBJ = {X : 10 }; Object.setPrototypeOf (V 정도); proto.y = 20 ; proto.z = 40 ; obj.x // 10 무승부의 볼륨 // 20 obj.z // (40)
-
첫 번째 인수가 객체가 아닌 경우 자동으로 객체로 변환됩니다. 첫 번째 매개 변수가 반환되기 때문에, 그래서 작업이 영향을주지 않습니다.
-
정의 및 널이 오브젝트로 변환 될 수 없기 때문에, 최초의 파라미터가 정의하거나 널인 경우 그래서, 에러 것이다.
4.
Object.getPrototypeOf (OBJ);
-
-
매개 변수가 정의되지 않았거나 null의 경우, 객체로 변환 할 수 없습니다, 그것은 오류가 될 것입니다.
5.
프로토 foo는 = {const를 : '안녕하세요' }; const를 OBJ = { () 찾기 { 반환 super.foo; } }; Object.setPrototypeOf (OBJ, 프로토) obj.find () // "안녕하세요" // 위의 코드 , 중 프로토 타입 객체에 대한 참조로 obj가 방법을 찾을 객체는 프로토 foo는 속성을 super.foo.
내부 자바 스크립트 엔진, super.foo 해당 Object.getPrototypeOf합니다 (이) .foo (속성) 또는 Object.getPrototypeOf합니다 (이) .foo.call합니다 (이) (방법).
예 :
프로토 = CONST { X : '안녕하세요' , foo는 () { 을 console.log ( 다음은이 .x를); } }; const를 OBJ = { X : '세계' , foo는 () { super.foo (); } } 객체 .setPrototypeOf는 (OBJ, 프로토) obj.foo () // "세계" // 위의 코드, 프로토 프로토 타입 객체의 super.foo 점 방식 foo는 있지만, 여전히 현재 개체 (OBJ)에 결합되었다, 출력은 세계.
6.
VAR OBJ = {foo는 '바', 바즈 : 42 }; Object.keys (OBJ) // [ "foo는", "바즈"]
Object.values 방법 배열을 반환 객체 자체의 부재 (되지 속됨) 파라미터 모두 이송 (Enumerable에서) 키 속성이다.
CONST OBJ = {100 : 'A', 2 ', B', 7 'C' }; Object.values (OBJ) // [ "B", "C", "A"]
위의 코드에서, 호출 속성 값은 수치에 따라, 소형에서 대규모로 이송 시퀀스는 B, C, A를 반환하도록.
Object.entries 방법은 배열을 반환 객체 자체의 부재 (되지 속됨) 파라미터 모두 이송 (Enumerable에서) 특성 키 배열이다.
CONST OBJ = {foo를 '바'바즈 42 }; Object.entries (OBJ) // [ "foo에", "바"], [ "바즈"42]
리턴 값 이외에 동일하지 않으며, 이러한 방법의 Object.values 동작은 기본적으로 동일하다.