js_插值/模板字符串与对象的打印
reference
模板字符串 - JavaScript | MDN (mozilla.org)
插入表达式
对于多行字符串的表示以及包含简单表达式值的打印,使用模板字符串是一个好的选择
打印对象
打印对象的时候,就不太适合使用模板字符串
const obj = { name: "name1", age: "11" }; const { name, age } = obj; console.log(obj, ` 😎print by console.log singly(seperate by comma)`); console.log(`${obj} @it is not what you want generally`); console.log(`${obj.toString()}`); console.log(`name:${name};\tage:${age}\t😎this is waht you want by interpolation`); /* summary */ /* 调试的时候主要借助于非插值来检查对象 */
打印结果
PS D:\repos\web\js> node "d:\repos\web\js\testjs\printObj.js" { name: 'name1', age: '11' } 😎print by console.log singly(seperate by comma) [object Object] @it is not what you want generally [object Object] name:name1; age:11 😎this is waht you want by interpolation
小结:
在做调试的时候(尤其是打印某些复杂值的时候,模板字符串太合适直接答应对象,如果要用模板字符串,那么尝试对对象进行结构,然后再用
但是往往,我们不确定对象中的属性有哪些,所以使用逗号分隔打印会更加管用)
此外,打印对象所有属性时,不应该通过+
和将字符串和要被解构打印的对象直接相加.
例如,egg.js中的ctx.body在赋值的时候,可以赋值给body属性某个对象,也可以时某个值
但是如果通过+
或者+=
多次赋值,那么其中的对象将化为[object object]
,即看不到对象的属性.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了