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],即看不到对象的属性.

posted @   xuchaoxin1375  阅读(8)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示