Chrome 콘솔에서 전체 개체를 표시하는 방법은 무엇입니까?


157
var functor=function(){
    //test
}

functor.prop=1;

console.log(functor);

이것은 펑터의 기능 부분만을 보여주고 콘솔에서 펑터의 속성을 보여줄 수 없습니다.

답변:


249

다음 과 같이 버전 console.dir()대신 클릭 할 수있는 탐색 가능한 개체를 출력하는 데 사용 합니다 .toString().

console.dir(functor);

지정된 개체의 JavaScript 표현을 인쇄합니다. 로깅되는 객체가 HTML 요소이면 해당 DOM 표현의 속성이 인쇄됩니다. [1]


[1] https://developers.google.com/web/tools/chrome-devtools/debug/console/console-reference#dir


1
varNameChrome 콘솔에서 인쇄 하고 Enter 키를 누르면 console.dir(varName).
Vadzim

120

다음을 시도하면 더 나은 결과를 얻을 수 있습니다.

console.log(JSON.stringify(functor));

이 답변이 훌륭하지만 새 탭 반환에 노력 위의 샘플,하지 작업이 정의되지 않습니다 생각
aitorllj93

1
이 답변과 관련하여 결국에는 질문이 여기에 관한 것처럼 콘솔에서 "찾아 볼 수있는"개체가 아닌 개체를 나타내는 문자열을 반환합니다. 사실, JSON.parse를 통해이 출력 문자열을 실행하면 객체 형식으로 돌아가지만 콘솔은 여전히 ​​".toString ()"을 표시하고 다시 정사각형으로 돌아갑니다. 여기에서 "console.dir"을 사용한 대답은 현재 질문에 가장 적합합니다.
TheCuBeMan

22

다음을 시도하면 더 나은 결과를 얻을 수 있습니다.

console.log(JSON.stringify(obj, null, 4));

이 답변은 출력 형식을 지정하여 @BastiBen을 개선합니다.
Xeoncross

12
var gandalf = {
  "real name": "Gandalf",
  "age (est)": 11000,
  "race": "Maia",
  "haveRetirementPlan": true,
  "aliases": [
    "Greyhame",
    "Stormcrow",
    "Mithrandir",
    "Gandalf the Grey",
    "Gandalf the White"
  ]
};
//to console log object, we cannot use console.log("Object gandalf: " + gandalf);
console.log("Object gandalf: ");
//this will show object gandalf ONLY in Google Chrome NOT in IE
console.log(gandalf);
//this will show object gandalf IN ALL BROWSERS!
console.log(JSON.stringify(gandalf));
//this will show object gandalf IN ALL BROWSERS! with beautiful indent
console.log(JSON.stringify(gandalf, null, 4));

9

이것은 나를 위해 완벽하게 작동했습니다.

for(a in array)console.log(array[a])

추출 된이 데이터의 정리 및 사후 사용을 찾기 / 바꾸기 위해 콘솔에서 생성 된 배열을 추출 할 수 있습니다.


3
좀 더 자세히 설명 :for (i in arr) { console.log(i); console.log(arr[i]); }
지오

이는 출력 프로퍼티 및 메소드는 열거하지 않을 것이다
Barbu Barbu

1

Trident D' Gao 답변의 기능을 만들었습니다.

function print(obj) {
  console.log(JSON.stringify(obj, null, 4));
}

이것을 어떻게 사용 하는가

print(obj);

0

콘솔에 편리하게 출력하는 함수를 작성했습니다.

// function for debugging stuff
function print(...x) {
    console.log(JSON.stringify(x,null,4));
}

// how to call it
let obj = { a: 1, b: [2,3] };
print('hello',123,obj);

콘솔에 출력됩니다.

[
    "hello",
    123,
    {
        "a": 1,
        "b": [
            2,
            3
        ]
    }
]

0

최신 브라우저에서는 console.log(functor)완벽하게 작동합니다 (동일하게 작동합니다 console.dir).


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.