为了账号安全,请及时绑定邮箱和手机立即绑定

修改实例属性对修改前已输出到控制台的内容也有影响?

修改实例属性对修改前已输出到控制台的内容也有影响?

呼啦一阵风 2018-11-14 13:14:07
不是原型动态性的问题,是控制台的问题先贴上我的代码function Father(){    this.colors = ["red", "green", "blue"],    this.sayColor = function(){    console.log(this.colors);    };}function Child(){}Child.prototype = new Father();var child1 = new Child();child1.sayColor(); // ["red", "green", "blue"] 原始值child1.colors.push("black"); // 属性修改var child2 = new Child();child2.sayColor(); // ["red", "green", "blue", "black"]child1.sayColor(); // ["red", "green", "blue", "black"]注释为正常运行的结果,但若在浏览器里(Firefox和Chrome)打开,控制台会返回3个相同的数组:以及点击刷新页面后,返回正常的结果;或将console.log改为alert,打开页面即返回正常的结果;因为IE每次都需要手动载入脚本,相当于刷新了一次页面,所以结果正常;所以我觉得,是不是控制台输出结果的方式和我想的不一样?求解答。
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 571 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信