正如标题所说,我如何将任何类型的值串化并获得完全相同的输出控制台.log将在变量中打印,或者非常类似但仍然有用的打印,而不是转到控制台.最好是在德诺.

.toString()Error()和其他类似函数上工作得很好,但在更传统的对象上返回[object Object].同样,JSON.stringify()在更传统的对象上运行得很好,但在Error()之类的对象上返回{}.由于这两个对象都是对象,我基本上在想,当您事先不知道对象将是什么类型时,使用对象获得最佳输出的最佳方法是什么.

推荐答案

控制台行为不是由ECMAScript规范定义的,所以给定的运行时可以实现它,只要它的维护者认为合适.例如,报价MDN:

它如何工作的细节因浏览器而异,但 通常会提供de facto组功能.

Deno确实曝光了the inspect function:

inspect(value: unknown, options?: InspectOptions): string

将输入转换为与打印格式相同的字符串 到console.log()岁.

node 有util.inspect个,这与之类似,尽管没有显式地绑定到控制台行为:

util.inspect()方法返回对象字符串表示形式 这是用于调试的.

Javascript相关问答推荐

如何用显示网格平滑地将元素从一个地方移动到另一个地方?

如何解决chrome—extension代码中的错误,它会实时覆盖google—meet的面部图像?'

React Code不在装载上渲染数据,但在渲染上工作

Chromium会将URL与JS一起传递到V8吗?

MathJax可以导入本地HTML文档使用的JS文件吗?

如何在Vue 3中创建自定义 Select 组件,并将选项作为HTML而不是props 传递?

Ember.js 5.4更新会话存储时如何更新组件变量

从页面到应用程序(NextJS):REST.STATUS不是一个函数

使用getBorbingClientRect()更改绝对元素位置

当我try 将值更改为True时,按钮不会锁定

一个实体一刀VS每个实体多刀S

在Odoo中如何以编程方式在POS中添加产品

如何修复错误&语法错误:不能在纯react 项目中JEST引发的模块&之外使用导入语句?

如何在FiRestore中的事务中使用getCountFromServer

谷歌饼图3D切片

TypeORM QueryBuilder限制联接到一条记录

$GTE的mongoose 问题

JSON Web令牌(JWT)错误:RSA密钥对的签名无效

JavaScript -如何跳过某个字符(S)来打乱字符串中的字符

如何导入我在Web Worker创建的函数?