gpt4 book ai didi

javascript - 在没有赋值的情况下声明变量有什么意义?

转载 作者:搜寻专家 更新时间:2023-11-01 04:54:15 25 4
gpt4 key购买 nike

我正在研究一些 CreateJS 示例,在其中一个示例中我看到了这个,我想知道它有什么用

(function() {
var c = createjs;
var a = function(blabla) {
this.blabla = blabla;

var p = Game.prototype;
p.a;
p.b;
p.c;
p.d;
/*
... 15 variables like that ...
*/
p.init = function(param) {
/* blabla */
}
/*
...
long code after that
...
*/
})();

它在github samples上,在/createjs/sandbox-master/PlanetaryGary目录下,就是文件js/Game.js

最佳答案

我是相关代码的原作者。这种模式归结为一个简单的哲学,即好的代码是 self 记录的。

值得一提的是,这些属性实际上并没有命名为 a、b、c 等,这些属性通常被分配了一个默认值(尽管在这种特殊情况下没有)。

前期变量声明明确定义了将与“类”关联的字段。这允许开发人员从上到下进行扫描,并在查看操作类的方法之前建立类操作数据的心智模型。

它提供了一个方便的上下文位置来 Hook 文档注释,尽管没有记录引用的代码。

/**
* Docs for firstName here.
**/
p.firstName = "default";

/**
* lastName docs.
**/
p.lastName = "default";

最后,我发现它鼓励对数据和文档采取更周到的方法。定义新属性的行为成为查看现有属性和评估新字段必要性的机会。我已经看到很多 bug 和糟糕的代码是由于开发人员随意地将属性附加到类而导致的。

当您在代码的专用区域中显式定义新属性时,也更难忘记记录新属性(并且更容易快速发现未记录的属性)。

关于javascript - 在没有赋值的情况下声明变量有什么意义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25326536/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com