[NODEJS] 어떻게 '[오브젝트]') Node.js를의 CONSOLE.LOG (에 전체 개체를 얻을보다는 할 수 있습니까?
NODEJS어떻게 '[오브젝트]') Node.js를의 CONSOLE.LOG (에 전체 개체를 얻을보다는 할 수 있습니까?
해결법
-
1.당신은) (util.inspect 사용해야합니다 :
당신은) (util.inspect 사용해야합니다 :
const util = require('util') console.log(util.inspect(myObject, {showHidden: false, depth: null})) // alternative shortcut console.log(util.inspect(myObject, false, null, true /* enable colors */))
출력
{ a: 'a', b: { c: 'c', d: { e: 'e', f: { g: 'g', h: { i: 'i' } } } } }
() 문서를 util.inspect 참조하십시오.
-
2.이 작업은 JSON.stringify를 사용하고,뿐만 아니라 아마도 쉽게 구문을 기억하는 일부 좋은 들여 쓰기를 얻을 수 있습니다.
이 작업은 JSON.stringify를 사용하고,뿐만 아니라 아마도 쉽게 구문을 기억하는 일부 좋은 들여 쓰기를 얻을 수 있습니다.
console.log(JSON.stringify(myObject, null, 4));
{ "a": "a", "b": { "c": "c", "d": { "e": "e", "f": { "g": "g", "h": { "i": "i" } } } } }
당신이 원하는 것을 조정할 수 있도록 세 번째 인수는 들여 쓰기 수준을 설정합니다.
필요한 경우 여기에 더 많은 세부 사항 :
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify
-
3.v7.7.4 (적어도) Node.js를 v0.10.33 (안정적) / v0.11.14 (불안정) 아마 통해 (적어도)에서 많은 유용한 답변의 컴파일 (이 답변의 최신 업데이트로 버전 현재) . 그의 도움 로리 O'Kane에 모자의 팁.
v7.7.4 (적어도) Node.js를 v0.10.33 (안정적) / v0.11.14 (불안정) 아마 통해 (적어도)에서 많은 유용한 답변의 컴파일 (이 답변의 최신 업데이트로 버전 현재) . 그의 도움 로리 O'Kane에 모자의 팁.
TL; DR
() 질문에, 사용 console.dir을 예를 들어 원하는 출력을 얻으려면 :
console.dir(myObject, { depth: null }); // `depth: null` ensures unlimited recursion
왜 util.inspect ()? 을 console.log ()와 console.dir ()뿐만 아니라 암시 적으로 Node.js를 REPL 사용 util.inspect () :이 진단 출력의 마음에 이미 때문입니다. 그것은 ( 'UTIL')와 직접 통화 util.inspect ()을 요구하는 일반적 필요는 없습니다.
자세한 사항은 아래.
util.inspect ()는 자동 프리티 지문 객체와 배열 표현하지만, 필요한 경우에만 여러 출력을 생성한다.
더 예쁜 인쇄를 제어하려면, 제 3의 인수를 JSON.stringify ()를 사용하는 것을 고려하지만, 다음 사항에 유의하십시오
util.inspect () 옵션 개체 (2 인자) :
옵션 옵션 객체가 포맷 된 문자열의 변경합니다 특정 측면 것을 전달 될 수있다; 지원되는 속성 중 일부는 다음과 같습니다
현재, 전체 목록의 최신 Node.js를 문서를 참조하십시오.
util.format () 형식 문자열의 자리 (1 인자)
지원되는 자리 중 일부는 다음과 같습니다
현재, 전체 목록의 최신 Node.js를 문서를 참조하십시오.
-
4.또 다른 간단한 방법은 JSON으로 변환하는 것입니다
또 다른 간단한 방법은 JSON으로 변환하는 것입니다
console.log('connection : %j', myObject);
-
5.이 시도:
이 시도:
console.dir(myObject,{depth:null})
-
6.Node.js를 6.4.0 이후,이 우아 util.inspect.defaultOptions으로 해결 될 수있다 :
Node.js를 6.4.0 이후,이 우아 util.inspect.defaultOptions으로 해결 될 수있다 :
require("util").inspect.defaultOptions.depth = null; console.log(myObject);
-
7.아마도 console.dir 당신이 필요합니다.
아마도 console.dir 당신이 필요합니다.
http://nodejs.org/api/console.html#console_console_dir_obj
당신이 더 많은 제어가 필요한 경우 옵션 util을 사용합니다.
-
8.당신은 또한 할 수있다
당신은 또한 할 수있다
console.log(JSON.stringify(myObject, null, 3));
-
9.개체를 검사하는 좋은 방법은 노드를위한 크롬 DevTools로와 노드 --inspect 옵션을 사용하는 것입니다.
개체를 검사하는 좋은 방법은 노드를위한 크롬 DevTools로와 노드 --inspect 옵션을 사용하는 것입니다.
node.exe --inspect www.js
열기 크롬 : 노드에 대한 // 크롬에 / # 장치를 검사하고 열기를 클릭 전용 DevTools로
이제 모든 기록 된 목적은 크롬에서 실행되는 일반 JS 같은 관리자에서 사용할 수 있습니다.
관리자를 다시 할 필요가 없습니다, 그것은 노드 시작하거나 다시 시작하는 즉시 자동으로 노드에 연결합니다. 노드에 대한 두 --inspect 및 크롬 DevTools로는 노드와 크롬의 이전 버전에서 사용하지 못할 수 있습니다.
-
10.이러한 용도에 모두 적용 할 수 있습니다 :
이러한 용도에 모두 적용 할 수 있습니다 :
// more compact, and colour can be applied (better for process managers logging) console.dir(queryArgs, { depth: null, colors: true }); // get a clear list of actual values console.log(JSON.stringify(queryArgs, undefined, 2));
-
11.나는이 당신을 위해 유용 할 수 있다고 생각.
나는이 당신을 위해 유용 할 수 있다고 생각.
CONST 인 myObject = { "A": "A", "비":{ "C": "C", "디":{ "E": "E", "에프":{ "g": "g", "H": { "I": "I" } } } } }; CONSOLE.LOG (JSON.stringify (myObject에, NULL, '\ t'));
이 답변에서 언급 한 바와 같이 :
-
12.당신은 단순히 CONSOLE.LOG 메시지 객체의 표현을 무시합니다 개체에 대한 검사 () 메소드를 추가 할 수 있습니다
당신은 단순히 CONSOLE.LOG 메시지 객체의 표현을 무시합니다 개체에 대한 검사 () 메소드를 추가 할 수 있습니다
예를 들면 :
var myObject = { "a":"a", "b":{ "c":"c", "d":{ "e":"e", "f":{ "g":"g", "h":{ "i":"i" } } } } }; myObject.inspect = function(){ return JSON.stringify( this, null, ' ' ); }
모두 CONSOLE.LOG 노드 쉘에서 필요에 따라 다음 개체가 표시됩니다
-
13.스크립트를 실행할 때 간단한 트릭은 환경 변수로 DEBUG_DEPTH = NULL을 추가 할 디버그 모듈을 것
스크립트를 실행할 때 간단한 트릭은 환경 변수로 DEBUG_DEPTH = NULL을 추가 할 디버그 모듈을 것
전의.
DEBUG = * DEBUG_DEPTH = NULL 노드하는 index.js
당신이 코드에서
const debug = require('debug'); debug("%O", myObject);
-
14.노드 REPL은 내장 된 객체가 표시되는 방식을 재정의에 대한 솔루션 여기를 참조있다.
노드 REPL은 내장 된 객체가 표시되는 방식을 재정의에 대한 솔루션 여기를 참조있다.
-
15.가장 쉬운 옵션 :
가장 쉬운 옵션 :
CONSOLE.LOG ( '% O'인 myObject);
-
16.
let myVar = {a: {b: {c: 1}}}; console.log(JSON.stringify( myVar, null, 4 ))
데이터 객체의 깊은 검사를 위해 중대한. 이 방법은 중첩 배열과 배열 중첩 된 객체에서 작동합니다.
-
17.당신이 배열의 숨겨진 항목을 표시 할 수있는 방법을 찾고 있다면, 당신은 maxArrayLength를 전달하는 데있어 : 무한대를
당신이 배열의 숨겨진 항목을 표시 할 수있는 방법을 찾고 있다면, 당신은 maxArrayLength를 전달하는 데있어 : 무한대를
console.log(util.inspect(value, { maxArrayLength: Infinity }));
from https://stackoverflow.com/questions/10729276/how-can-i-get-the-full-object-in-node-jss-console-log-rather-than-object by cc-by-sa and MIT license
'NODEJS' 카테고리의 다른 글
[NODEJS] 어떻게 (타사 라이브러리를 사용하지 않고) Node.js를 가진 파일을 다운로드? (0) | 2020.09.16 |
---|---|
[NODEJS] 어떻게 Node.js를 프로그램에 명령 줄 인수를 전달합니까? (1) | 2020.09.16 |
[NODEJS] Express를 사용 NodeJS 서버에서 파일을 다운로드 (0) | 2020.09.16 |
[NODEJS] 어떻게 NPM의 ERR "NPM 오류를 해결하기 위해! 코드 ELIFECYCLE " (0) | 2020.09.16 |
[NODEJS] 간단한 웹 서버로 Node.js를 사용 (0) | 2020.09.16 |