美文网首页让前端飞Web前端之路web前端经典面试题
打印对象的"精心骗局"-js中object对

打印对象的"精心骗局"-js中object对

作者: 全栈弄潮儿 | 来源:发表于2019-08-19 14:30 被阅读5次

console.log()打印诡异骗局

let arr = [{id:1, name:'张飞'}, {id:2, name:'赵云'}, {id:3, name:'刘备'}];
console.log(arr)

展开前

image.png

展开后

image.png

提前打印,但是后续改变属性值,打印 [{id: 1, name: "张飞"}, {id: 2, name: "赵云"}, {id: 3, name: "刘备"}],但是展开后就变成 [{id: 1, name: "妲己"}, {id: 2, name: "赵云"}, {id: 3, name: "刘备"}],有人说这还有展开?是的每一个对象左边都有一个顶点朝右的灰色等边三角形,点击顶点朝下。

原因分析

Array、Object都是引用类型,是对象引用而不是值引用。

如何打印及时值

JSON.stringify转为json字符串

let arr = [{id:1, name:'张飞'}, {id:2, name:'赵云'}, {id:3, name:'刘备'}];

JSON.stringify(arr);

image.png

经典前端面试题每日更新,欢迎参与讨论,地址:https://github.com/daily-interview/fe-interview


更多angular1/2/4/5、ionic1/2/3、react、vue、微信小程序、nodejs等技术文章、视频教程和开源项目,请关注微信公众号——全栈弄潮儿

image

相关文章

网友评论

    本文标题:打印对象的"精心骗局"-js中object对

    本文链接:https://www.haomeiwen.com/subject/vemssctx.html