Javascript 我不知道为什么。它只返回匿名函数本身 getNameFunc : function () { var self = this return function () { return self.name } } va

Javascript 我不知道为什么。它只返回匿名函数本身 getNameFunc : function () { var self = this return function () { return self.name } } va,javascript,Javascript,我不知道为什么。它只返回匿名函数本身 getNameFunc : function () { var self = this return function () { return self.name } } var nameFunc = object.getNameFunc() nameFunc() var name = "The Window"; var object = { name : "My Object", getNameFunc

我不知道为什么。它只返回匿名函数本身
getNameFunc : function () {
    var self = this
    return function () {
        return self.name
    }
}
var nameFunc = object.getNameFunc()
nameFunc()
var name = "The Window";
var object = {
  name : "My Object",
  getNameFunc : function(){
    that = this; // targeting this
    return function() {
      return that.name;
    };
  }
};
alert(object.getNameFunc()()); // it is My Object now
var myObject = {
    name:'My Object'
};

console.log(myObject.name);
console.log(myObject['name']);
function MyObject() {
    this.name = 'My Object';
}
myObject = new MyObject();

console.log(myObject.name);
[**edit**: redacted because not a good method]
function makeObject() {
    var THIS = {};

    THIS.name = 'My Object';
    THIS.sayMyName = function () {
        return THIS.name+" is my name";
    }

    return THIS;
}
var object = {
  name : "My Object",
  getNameFunc : function(){
    return (function(){
      return this.name;
     }).bind(this);
  }
};