以编程方式使用console.log输出的危险

p1tboqfb  于 2021-09-23  发布在  Java
关注(0)|答案(0)|浏览(268)

这是在一次代码审查中提出的,我正在把互联网拖进争论中。

鉴于。。。

node.js文档,用于 console.logconsole.log 将其非字符串参数传递给 util.format .
node.js文档,用于 util.format 提到 util.format 用作调试工具。
node.js文档,用于 util.inspectconsole.logutil.format 召唤 util.inspect 并进一步声称: util.inspect(object[, options]) 这个 util.inspect() 方法返回的字符串表示形式 object 这是为了调试。产量 util.inspect 可以随时更改,不应以编程方式依赖。
(重点是我的,我已经熟悉node.js中“process.stdout.write”和“console.log”之间区别的答案。)

这是否意味着。。。

这是否意味着写最简单的东西是不合适的 console.log(1) 如果输出将由另一个进程以编程方式使用。。。因为参数正在传递给 util.inspect ,它似乎保留随时更改输出格式的权利?任何非字符串参数似乎都是禁忌,而且“随时可能更改”似乎保留了足够的自由,如果愿意的话,它可能明天开始输出随机表情。
我们有没有得到任何保证,从什么输出 console.log 在传递非字符串参数时将是?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题