NodeJS输出无法在Windows“ cmd”中正确显示字符串

时间:2019-05-31 08:15:23

标签: node.js cmd

我的NodeJS console.log()函数不再在Window的cmd中正确显示字符串。它们呈现为具有黑色背景的黑色文本。我不记得更改任何可能导致这种情况的方法。

我很确定这是颜色,尽管不是终端本身的颜色(我尝试过更改颜色),因为当我复制文本时,它具有正确的输出。我提供了它的外观截图。

屏幕截图:

Screenshot

文本输出:

{ key1: 'value',
  key2: 51,
  key3: 2019-05-31T08:05:51.492Z,
  key4: [ '12', '23', '24' ] }

还有其他人有同样的问题吗?可能是什么原因引起的(并不总是这样)。

编辑:根据我的收集,Object.toString方法导致对象显示不正确。 Node告诉我这是本机代码。是什么原因导致此问题?

2 个答案:

答案 0 :(得分:0)

看起来好像有人用console.log修补了猴子,并使用了https://www.npmjs.com/package/cli-highlight这样的东西在输出之前对输出进行着色。

我会在您的团队中四处询问,并在您的源代码存储库中搜索提及控制台的提交。

如果可以,请检查其他环境下的行为,以了解它是否是特定于您的计算机的内容,例如终端配置。

答案 1 :(得分:0)

所以我知道了。某些内容(我不知道是什么,我怀疑我是偶然这样做的)更改了注册表中的某些cmd颜色,从而使它们变为黑色。我不知道是什么原因引起的,但至少现在可以了。如果您遇到相同的问题,请在HKEY_CURRENT_USER\Console处查找颜色值,并查看某些颜色表值是否可以设置为零。我能够找到其他用户的一些值,尽管它们与最初设置的值不完全相同,但他们将其修复。