나는 자동으로이 기능의 일반화를 통해, 주어진 자바 스크립트 객체합니다 ( 숨겨진 포함)의 모든 속성을 결정하는 데 싶습니다Javascript 개체에서 숨겨진 속성/메서드를 찾는 방법은 무엇입니까?
function keys(obj) {
var ll = [];
for(var pp in obj) {
ll.push(pp);
}
return ll;
}
이 사용자 정의 개체에 대한 작동하지만 많은 실패 내장 명령은 :
repl> keys({"a":10,"b":2}); // ["a","b"]
repl> keys(Math) // returns nothing!
기본적으로, 나는 새로운 객체를 탐구 정말 유용한 파이썬의 디렉토리()와 도움()의 등가물을 작성하고 싶습니다.
내 이해는 숨겨진 속성 (사용자 코드 evidently은 HTML5까지 "열거 가능"속성을 설정할 수 없음)을 이해하므로 수학, 문자열 등의 속성을 단순히 하드 코딩하여 dir() 이에 상응합니다 (예 : here과 같은 목록 사용). 그러나 더 좋은 방법이 있습니까?
편집 : 좋아, 지금까지 본 최고의 답변은 this thread입니다. 자신의 JS 코드로는이 작업을 쉽게 수행 할 수 없지만 그 다음으로 가장 좋은 방법은 Chrome의 개발자 도구 (Chrome ->보기 -> 개발자 -> 개발자 도구)에서 console.dir을 사용하는 것입니다. console.dir (Math)을 실행하고 삼각형을 클릭하여 모든 방법을 나열하십시오. 대부분의 대화식/검색 작업에 충분합니다 (런타임에이 작업을 실제로 수행 할 필요는 없습니다).
아하. 그래서 이것이 크롬이하는 일입니다. 하드 코딩 한 것 같습니다. – ramanujan