请问这种情况如何获取?

function Person(){
    this.name = "name";
    this.Mediator = {
        sayName : function(){
            //如何获取Person中的name
        }
    }
}
var p = new Person();
p.Mediator.sayName();    
阅读 1.8k
2 个回答
function Person(){
    var person = this;
    this.name = "name";
    this.Mediator = {
        sayName : function(){ 
            return person.name;
            //如何获取Person中的name
        }
    }
}
var p = new Person();
p.Mediator.sayName();   

楼上是一种方法,bind 也可以:

function Person(){
    this.name = "name";
    this.Mediator = {
        sayName : function(){
            //如何获取Person中的name
            return this.name;
        }.bind(this)
    }
}
var p = new Person();
var name = p.Mediator.sayName();
console.log(name); // name
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题