用一分钟理解console的这个原理,多留几根黑发~

栏目: JavaScript · 发布时间: 5年前

内容简介:问题: console打印出的值与实际值不符的原因。碰到这个问题是因为更改某一个值a后将其存储起来,更改为a1后,然而打印出来的值却是a1,展开打印的值是a。因为不理解这个现象,导致调试代码走了很多弯路,最后才定位到问题。代码

问题: console打印出的值与实际值不符的原因。

碰到这个问题是因为更改某一个值a后将其存储起来,更改为a1后,然而打印出来的值却是a1,展开打印的值是a。因为不理解这个现象,导致调试代码走了很多弯路,最后才定位到问题。

先来看现象

用一分钟理解console的这个原理,多留几根黑发~

原因

代码

let a = { name: 'langlang', look: 'handsome'};
 console.log(a);
 a.name = 'shuishui';
 a.look = 'beautiful';
复制代码

原因: 打印出的值是运行时的值,点击展开后是最后修改的值。

用一分钟理解console的这个原理,多留几根黑发~

chrome控制台打印对象是引用的,默认没有展开,展开后就是最后修改的值,所以会出现展开后的值与之前不同。

如果想看到实时的值,可以直接打印字符串:

console.log(JSON.stringify(a));
复制代码

结果:

用一分钟理解console的这个原理,多留几根黑发~

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

C和C++代码精粹

C和C++代码精粹

阿林森 / 董慧颖 / 人民邮电出版社 / 2003-4-1 / 59.00

《C和C++代码精粹》基于作者备受好评的C/C++ User Journal杂志上的每月专栏,通过大量完全符合ISO标准C++的程序集合,说明了C++真正强大的威力,是C和C++职业程序员的实践指南。可以帮助有一定经验的C和C++程序员深入学习这两种密切相关的语言,对书中代码的参悟和应用,可以帮助他们从根本上提高使用程序的效率。一起来看看 《C和C++代码精粹》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

SHA 加密
SHA 加密

SHA 加密工具

html转js在线工具
html转js在线工具

html转js在线工具