【问题标题】:Variables when minified缩小时的变量
【发布时间】:2014-01-02 12:33:08
【问题描述】:

鉴于当缩小的 JavaScript 变量将被简化时为窗口、文档、未定义等声明或使用变量的最佳方式是什么?

第一种方式

(function ($, win, doc, undefined) {
}(jQuery, window, document));

第二种方式

(function () {
    var $ = jQuery,
        win = window,
        doc = document,
        undefined;
}());

【问题讨论】:

  • 看起来,因为缩小的目标是减少文件大小,所以最好的答案是第一个,因为它更短。
  • 第二种方式的可读性更好。许多工具可用于缩小代码,可以比第一种方式压缩代码。
  • @KunJ 看看我在answer 中所说的话。
  • @TJonS 感谢您的回答。

标签: javascript minify


【解决方案1】:

对于缩小的代码,越短(要传输的字节越少)总是越好。因此,对于缩小文件,第一个选项是最好的:

(function($,w,d,u){})(jQuery,window,document); 46 个字符。

与其他选项相比:

(function(){var $=jQuery,w=window,d=document,u=undefined;})(); 62 个字符。

附注你做错了闭包。 (function(){}()) 会抛出语法错误。 (function(){})() 不会。

【讨论】:

    【解决方案2】:

    没关系,编写代码时保持清晰和可维护的格式,然后在生产环境中使用minifier,它将您的代码压缩到非常小的东西。

    您甚至可以使用 make 之类的东西来自动化整个过程

    请记住 premature optimization is the root of all evil(您正在尝试预先最小化代码的大小)

    【讨论】:

      【解决方案3】:

      我不相信它真的有什么不同,除了第二种方式占用更多空间。我个人更喜欢第二种方式,因为我认为它更具可读性。

      但是为了缩小,你肯定想采用第一种方式。使用的空间少得多。

      【讨论】:

        猜你喜欢
        • 2012-09-27
        • 2015-03-22
        • 2019-01-04
        • 2017-08-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-11-15
        相关资源
        最近更新 更多