妈呀啊啊啊啊啊啊啊啊啊啊啊,真的要崩溃,看视频的时候看到了一个this指向的题,想了半个小时。。。真的被自己蠢到,怎么会有人这么笨啊。。。
function a(xx) {
this.x = xx;
return this
};
var x = a(5);
var y = a(6);
console.log(x.x)
console.log(y.x)
结果是:
undefined 6
首先看 x,这个函数其实就是在window上添加一个x属性,然后返回window对象,
var x = a(5);
就是在window上添加一个属性x=5 然后把this指向x,x就是个window对象
var y = a(6);
就是在window上改变x的值为6 ,然后6.x肯定是undefined
y.x为6