Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 移相器框架,该vs var_Javascript_Phaser Framework - Fatal编程技术网

Javascript 移相器框架,该vs var

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和这个。我意识到“this”指的是方法对象

然而,在下面的例子中,有人能解释为什么我们使用“var-box”而不是这个.box吗?。另一方面,我们正在使用这个。微调器

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);