【问题标题】:Why do most JavaScript frameworks use such short variable names?为什么大多数 JavaScript 框架都使用这么短的变量名?
【发布时间】:2013-07-30 03:22:34
【问题描述】:

多年来,我一直被告知要使用有意义的变量名。但是,每次我尝试调试一些 JavaScript 代码并深入研究第三方框架时,我发现每个 JavaScript 框架都会有变量名称,如aacbc

为什么这么短的变量名很常见?这似乎会损害可维护性。

【问题讨论】:

  • 通过这个工具运行你的 JavaScript 看看会发生什么:jscompress.com
  • 为什么这被否决了很多?虽然缩小是 JavaScript 开发人员的常识之一,但对其他人来说不是。

标签: javascript naming minify


【解决方案1】:

它被称为缩小。它以所有语言完成,但主要是 JavaScript,以从源代码中删除所有不必要的字符。它主要是 JavaScript,因为大型 JavaScript 文件可以变得更小,从而在浏览器中加载更快。

大多数 JavaScript 库都有可供开发人员使用的未缩小版本,以便可以进行调试,然后在生产中使用缩小版本来减少传输开销。

在编写代码时,您应该始终使用明智的变量,但这只是为了让开发人员可以阅读它,浏览器并不关心。

【讨论】:

    【解决方案2】:

    您很可能正在查看缩小的 javascript。这是通过minification tool 传递原始(希望更易读)源代码的结果。

    【讨论】:

      【解决方案3】:

      您可能正在查看的是最小化 代码。最小化器重写 Javascript 以占用最少的空间,因此它会尽快下载 - 删除不必要的空格,将变量和函数替换为短名称,并使用其他一些技巧。

      【讨论】:

        【解决方案4】:

        可能是您正在调试的 javascript 被缩小了。没有办法将缩小的 javascript 转换为作者编写的具有有意义名称的原始代码。即使那里的关键字不可读,您也只需使用您的直觉和分析能力来理解其他代码。

        【讨论】:

          【解决方案5】:

          您看到的可能是实际 javascript 的缩小版本。这样做是为了出于性能原因减小文件的大小。

          一个很好的例子是jQuery库,你可以看看development versionminified version

          【讨论】:

            【解决方案6】:

            正如其他人所说,这是缩小版。我对这个线程的贡献只是为了展示一个例子。

            举个例子:

            (function () {
                "use strict";
                var foo = function () {
                    return;
                };
                var bar = foo;
                var baz = bar;
            })();
            

            然后通过jscompress.com 运行它。结果将是

            (function(){"use strict";var e=function(){return};var t=e;var n=t})()
            

            【讨论】:

              猜你喜欢
              • 2011-01-09
              • 1970-01-01
              • 2019-11-23
              • 1970-01-01
              • 2011-04-28
              • 2010-10-06
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多