Javascript 在以下代码中使用“this”?

Javascript 在以下代码中使用“this”?,javascript,this,Javascript,This,我是JavaScript的初学者,我不太理解下面脚本中的一些内容 我知道Map、Player和App是类,Map、Player和App是这三个类的实例 但是,为什么要将关键字this与对象map和player一起使用,而不是只写var map=newmap和var player=newplayer 任何帮助都将不胜感激 var app; var App = function() this.map = new Map(); this.player = new Player(); };

我是JavaScript的初学者,我不太理解下面脚本中的一些内容

我知道Map、Player和App是类,Map、Player和App是这三个类的实例

但是,为什么要将关键字this与对象map和player一起使用,而不是只写var map=newmap和var player=newplayer

任何帮助都将不胜感激

var app;

var App = function() 
  this.map = new Map();
  this.player = new Player();
};

(function() {
  app = new App();
})();
这里map和player仅作为函数内部的变量提供。在这段特定的代码中,没有任何东西可以访问这些变量,因此它们将在函数结束时立即脱离作用域并被删除

var App = function() 
  this.map = new Map();
  this.player = new Player();
};

var app = new App();
app.map.foo();

在这里,map和player成为App实例的属性,可以在其外部和/或访问App的原型函数等其他函数。

这里指的是变量App。使用它的好处是,您将能够访问app.map或app.player

顺便说一句,Javascript中没有类,只有对象和函数。您可以编写行为与具有构造函数和静态方法的类非常相似的代码,但不要开始认为Javascript有类。
var App = function() 
  this.map = new Map();
  this.player = new Player();
};

var app = new App();
app.map.foo();