HarmonyOS鸿蒙Next中console.log打印日志,非字符串得.toString()或JSON.stringify()才能打印,是否有便捷的方法?
HarmonyOS鸿蒙Next中console.log打印日志,非字符串得.toString()或JSON.stringify()才能打印,是否有便捷的方法? 比如number(数字)、object(对象)、array(数组)类型,怎么能直接打印对应类型的字面量?
不然得用以下形式打印。
console.log(1.3.toString())
console.log(JSON.stringify({ 'hello': 'world' }))
console.log([2, 3, 3].toString())
4 回复
直接把console.log换成console.dir就好了,这样非字符串也能直接打印了。
console.dir(1.3)
console.dir({ 'hello': 'world' })
console.dir([2, 3, 3])
DevEco Studio输出效果:

更多关于HarmonyOS鸿蒙Next中console.log打印日志,非字符串得.toString()或JSON.stringify()才能打印,是否有便捷的方法?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
👍
在HarmonyOS Next中,console.log默认只直接输出字符串。对于非字符串数据,目前需要显式调用.toString()或JSON.stringify()进行转换。系统未提供内置的便捷方法来自动处理多种数据类型。开发者需根据数据类型手动选择转换方式以确保正确输出。
在HarmonyOS Next的ArkTS中,console.log方法本身支持直接打印多种数据类型,无需手动调用.toString()或JSON.stringify()。
你可以直接传入变量或字面量:
// 直接打印数字
console.log(1.3)
// 直接打印对象
console.log({ 'hello': 'world' })
// 直接打印数组
console.log([2, 3, 3])
// 混合打印
const num = 42
const obj = { name: 'test' }
console.log('数值:', num, '对象:', obj)
console.log内部会自动处理不同类型数据的格式化显示。对于对象和数组,会以可读的结构化形式输出,便于调试。

