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

this指向的问题

this指向的问题

慕容3067478 2018-11-21 10:14:43
function Persion(name) {    var self = this;    self.name = name;    console.log(self);    console.log(this);}Persion.prototype = {    before: function() {        // var self = this;        console.log('before' + self);        console.log('before' + this);        return this;    },    after: function(){        // var self = this;        console.log('after' + self);        console.log('after' + this);        return this;    }};var a = new Persion('Tom');a.before().after();var a = new Persion('Tom')的时候self和this还是指向Persion,怎么执行a.before().after()的时候self就指向了Window了,本身就是想用self保存this的,我并没有人为改变self,那为什么self的值会变,什么原理?补充:是最上面那句var self= this;在调试的时候发现self由Persion变成了window,before和after里面我注释掉声明是发现self未声明时输出的不是undefined而是window
查看完整描述

1 回答

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

添加回答

举报

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