_十年
2016-12-12 10:27
var obj={x:1};
function foo(){};
foo.prototype.z=3;
cosole.log(obj.x);
console.log(obj.z);
obj的x属性不是应该没有了吗?
如果想要达到老师所描述的效果的话,应该是这样的
var obj={x:1};var obj=new foo();变量obj会被申明提前,按照JS的执行顺序,首先变量obj被赋值为一个对象,继续执行obj又被赋值为一个foo函数,自然而然就代替了之前被赋值的对象,故obj之前的X属性也会被覆盖
JavaScript深入浅出
281102 学习 · 1020 问题
相似问题