yel*_*int 6 javascript console logging stdout node.js
我想将JSON.stringify()
'd 对象打印到控制台,作为 Mocha 测试套件输出的一部分。
在测试缩进时,我希望对象日志行向右缩进足够远(例如,3-4 个制表符空格),以便它们在正确的describe()
组中可识别。
我怎么能用像console.log
或这样的东西来实现这一目标process.stdout.write
?
如果只是用于 console.log 你可能想查找组,在你的控制台上检查:
var obj = {
a : 1,
b : 2,
c: 3
}
console.log('Non-tabbed');
console.group();
console.log(JSON.stringify(obj, null, 2));
console.groupEnd();
console.log('Back to non-tabbed');
Run Code Online (Sandbox Code Playgroud)
在当前浏览器和最新节点上运行良好。npm 上还有一个包,如果您使用的是较旧的节点版本,它可能仅适用于此。
这会将整个 JSON 字符串移动 3 个空格。它通过新行打破 JSON 字符串,然后在每行上添加 3 个空格到一个新字符串,该字符串将保持每一行移位。
var results = document.getElementById('results');
var obj = {
a: 5,
b: 3,
c: 4
};
var string = JSON.stringify(obj, null, 2);
var stringShifted = '';
string.split('\n').forEach(function(line){
stringShifted += ' ' + line + '\n';
});
console.log(string);
console.log(stringShifted);
results.innerHTML = 'Before : \n' + string;
results.innerHTML += '\n\nAfter : \n' + stringShifted;
Run Code Online (Sandbox Code Playgroud)
<pre id="results"></pre>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
7617 次 |
最近记录: |