Javascript 移相器框架,该vs var
我很难理解var和这个。我意识到“this”指的是方法对象 然而,在下面的例子中,有人能解释为什么我们使用“var-box”而不是这个.box吗?。另一方面,我们正在使用这个。微调器Javascript 移相器框架,该vs var,javascript,phaser-framework,Javascript,Phaser Framework,我很难理解var和这个。我意识到“this”指的是方法对象 然而,在下面的例子中,有人能解释为什么我们使用“var-box”而不是这个.box吗?。另一方面,我们正在使用这个。微调器 var MyGame = {}; MyGame.StateA = function (game) { this.spinner = null; this.text = null; }; MyGame.StateA.prototype = { init: function () { var box = this.
var MyGame = {};
MyGame.StateA = function (game) {
this.spinner = null; this.text = null;
};
MyGame.StateA.prototype = {
init: function () {
var box = this.make.graphics(0, 0);
box.lineStyle(8, 0xFF0000, 0.8);
box.beginFill(0xFF700B, 1);
box.drawRect(-50, -50, 100, 100);
box.endFill();
this.spinner = this.add.sprite( this.world.centerX, this.world.centerY, box.generateTexture() );
这里是变量定义,在javascript中我们用“var”一词定义/声明变量。通过“this”,我们在“function”作用域中使用,它指的是对象及其作用域。如果你愿意
this.box = this.make.graphics(0, 0);
然后可能会将其归因于窗口全局变量。这一切都取决于范围
这是var和这个的区别。在完全不同的情况下使用
为什么我们使用“var-box”而不是这个.box
在JavaScript中,对象通过引用分配给变量将
this.make.graphics
指定给框后,操作起来就更容易了
在功能方面box.lineStyle(8,0xFF0000,0.8)代码>和这个.make.graphics.lineStyle(8,0xFF0000,0.8)代码>也会这样做。
但是box.lineStyle
更短,可读性更强
this.box = this.make.graphics(0, 0);