我在这里看这个代码,遇到了一个我不太了解的风格.我对Javascript很新,但这种声明风格让我觉得与我在各种教程中所做的完全不同.
基本上我想知道的是通过这样做完成的是什么?
var Spriter;
(function (Spriter) {
. . .
})(Spriter || (Spriter = {}));
var Spriter;
(function (Spriter) {
. . .
})(Spriter || (Spriter = {}));
.
.
.
Run Code Online (Sandbox Code Playgroud)
为什么函数卡在括号之间?是什么(Spriter ||(Spriter = {}))附加到(函数(Spriter){}做什么?为什么'var Spriter;'写了多次?我认为多个'var Spriter'会多余.
至于这是什么,它允许你在Phaser(一个游戏引擎)中使用Spriter(一个值得在2d动画中使用骨骼的动画套件)中创建的动画.
var Spriter; (function(Spriter){...})(Spriter ||(Spriter = {}));
此代码执行以下操作
您可以使用以下代码snipetts清楚地理解
var Spriter;
(function (Spriter) {
alert(Spriter.name);
})(Spriter || (Spriter = {"name":"xyz"}));Run Code Online (Sandbox Code Playgroud)
var Spriter={"age":10};
(function (Spriter) {
alert(Spriter.name);
})(Spriter || (Spriter = {"name":"xyz"}));Run Code Online (Sandbox Code Playgroud)
这里Spriter不为空,它采用Spriter的值并且不显示值名称,因为Spriter对象中没有定义属性作为名称
希望这可以帮助
| 归档时间: |
|
| 查看次数: |
58 次 |
| 最近记录: |