javascript - 为什么Chrome里的console.log会有异步的表现
问题描述
今天写代码的时候遇到了一个感觉很奇怪很诡异的问题
/** * Created by zhang on 5/26/2017. */var Wiw = function () { this.config = {'form':{ 'height':300, 'width':500},'content':'please edit you text!','handler':function () { //empty} } console.log(this.config);}Wiw.prototype = { ext:function (cfg) {console.log('2');$.extend(this.config,cfg);//执行合并 }}document.getElementById('a').onclick = function () { new Wiw().ext({form:{} })}
非常普通,首先new出来 初始化 然后调用合并方法 按道理说输出的结果应该是 合并前的config属性对象和合并后的 但实际的情况确是
他的表现就像是合并后再输出 但是调用顺序却又是正常的
更加奇怪的是
当你把
console.log(this.config); 改成console.log(this.config.form)
结果又恢复了正常
而在fireFox之中一直都很正常
问题解答
回答1:怎么说了,我觉得吧,chrome console的输出内容,带点实时,看截图,尽管是后期改o的name,但这时候点开你看name怎么跟上面输出的不一致了= =。也符合题主后面又说改成form怎么又正常了。 我觉得 就是 那个向下箭头旁边的属于写死的,点开内容则是实时的。
另外一个问题:http://www.css88.com/jqapi-1....
var o = {form:{width:10}}$.extend(true, o,{form:{height:20}})
相关文章:
1. angular.js - angular内容过长展开收起效果2. dockerfile - 为什么docker容器启动不了?3. docker start -a dockername 老是卡住,什么情况?4. javascript - vue异步数据打印问题5. golang - 用IDE看docker源码时的小问题6. javascript - html 中select如何修改样式,鼠标悬浮时改变option样式,有没有插件啊7. html5 - 自己的H5页面如何集成支付宝支付8. javascript - weex和node,js到底是怎样一个关系呢?9. javascript - vue vue-router 报$router重复定义10. apache - 想把之前写的单机版 windows 软件改成网络版,让每个用户可以注册并登录。类似 qq 的登陆,怎么架设服务器呢?
