열거 불가능한 상속 속성 검색
열거 불가능한 상속 속성의 존재를 확인하는 것은 JavaScript에서 매우 중요합니다. Object.keys() 및 Object.getOwnPropertyNames()와 같은 메소드는 객체 속성에 대한 액세스를 제공하지만 열거할 수 없는 상속된 속성은 제외합니다.
이 격차를 해소하기 위해 다음에서 Object.getOwnPropertyNames() 메소드를 활용할 수 있습니다. 프로토타입 체인 탐색과 결합됩니다. 이 접근 방식을 사용하면 상속 계층 구조의 모든 수준에서 열거할 수 없는 속성을 식별할 수 있습니다.
다음은 이 기술을 보여주는 함수입니다.
function getAllProperties(obj) { var allProps = [] , curr = obj; do { var props = Object.getOwnPropertyNames(curr); props.forEach(function(prop) { if (allProps.indexOf(prop) === -1) allProps.push(prop); }); } while (curr = Object.getPrototypeOf(curr)); return allProps; } console.log(getAllProperties([1,2,3]));
Object.getOwnPropertyNames()를 프로토타입과 결합하여 체인 순회를 통해 이제 객체에서 상속된 속성을 포함하여 객체의 열거 가능한 속성과 열거 불가능한 속성의 전체 목록을 검색할 수 있습니다. 상위 프로토타입. 이 접근 방식은 가시성이나 소유권 상태에 관계없이 모든 자산에 대한 포괄적인 보기를 제공합니다.
위 내용은 JavaScript에서 열거할 수 없는 상속 속성을 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!