2015-01-26 3 views
4

개체가 무엇인지 확인하려고합니다.console.log 큰 개체를 어떻게?

console.log(obj)으로 콘솔이 줄을 자르지 만 전체 구조를 볼 수 없습니다.

는 그럼 난 파일

fs.writeFile('test', JSON.stringify(obj)); 

에 쓰기 시도하지만 순환 참조에 대한 몇 가지 오류가 발생합니다.

개체를 볼 수있는 다른 방법이 있습니까? 객체는 nodejs websocket 모듈과의 "연결"입니다. 워드 프로세서는 매우 가난하고 난 IP 주소 :(

+0

제안 사항 만 있으면, 중단 점을 배치하고 브라우저에서 검사하여 해당 내용을 볼 수 있습니다. –

+0

하지만 노드는 Linux 서버에서 실행됩니다. 텍스트 만 브라우저로 보낼 수 있습니다. 하지만 당신이 볼 수 있듯이 나는 그것을 json으로 바꿀 수 없다. – thelolcat

+0

얼마나 큰가? – epascarello

답변

6
fs.writeFile('test', JSON.stringify(obj)); 

는하지만 순환 참조에 대한 몇 가지 오류가 발생합니다.

JSON에서는 이러한 현상이 발생합니다. JSON는 등 기능, 정규 표현식에 날짜를 무시

당신은 노드의 console.log()는 다음 파일에 기록 할 수있는 전체 개체, 얻기 위해 내부적으로 사용하는 것입니다 util.inspect, 사용할 수 있습니다

var util = require('util'); 
fs.writeFileSync('test.txt', util.inspect(obj)); 

을 그리고 무한 깊이와 숨겨진 속성을 원한다면 :

util.inspect(obj, { showHidden: true, depth: null }) 
+0

유일한 대답입니다. 텍사스 – thelolcat

3

는 DIR 방법을 사용을 보유하고있는 재산을 찾을 수 없습니다.

console.dir(obj) 
+0

이 동일한 것을 인쇄합니다. 내 생각에 이것은 브라우저에서만 의미가 있다고 생각하십니까? – thelolcat

+0

이 메서드는 개체의 내용을있는 그대로 표시합니다. 전체 개체를 탐색 할 수 있습니다. "절단"이란 무엇을 의미합니까? –

+0

터미널 물건은 몇백 라인을 보여 주며, 나머지는 잘리지 않습니다 – thelolcat

1

당신은 DIR 방법을 사용할 수 있습니다 내가

console.dir(obj) 
을 믿는다

당신은 환영합니다;)

0

저는 전에는 console.dir을 사용한 적이 없으며, 그것은 올바른 방법 일 수 있습니다. 그러나 내가 항상 해왔 던 것은 전역 변수를보고 싶은 부분을 할당 한 다음 콘솔 내에서 직접 재생하는 것입니다. 이 같은

뭔가 그런 다음

var x; 
function xyz(){ 
    // Code 
    x = obj; 
} 

, 당신은 X를 입력하면 XYZ를 실행 한 후 직접 콘솔에서, 당신은이 개체를 가지고 있고, 기능을 포함하여 그것의 사본과 함께 재생할 수 있습니다 모든 속성을보고 수정하십시오.

관련 문제