代码之家  ›  专栏  ›  技术社区  ›  Gab Royer

为什么Bing会混淆他们的JavaScript?

  •  11
  • Gab Royer  · 技术社区  · 16 年前

    Bing 的源代码,因为我很好奇,想知道他们用什么来淡化他们的图像。我对只能用以下行来限定的内容感到惊讶:

    神圣的文字墙!

    这让我想知道,像这样混淆你的(X)HTML、CSS和JavaScript是否有任何优势?也许是为了减小文件的大小?


    11 回复  |  直到 16 年前
        1
  •  31
  •   William Brendel    16 年前

    minifying 以减少他们每天看到的数百万个请求所使用的带宽。

    足迹(包括原始足迹和后续足迹

    你可能也有兴趣阅读雅虎!用户界面博客文章标题 "Minification v. Obfuscation" .

        2
  •  7
  •   Adam    16 年前

    • 减小文件的总大小(如您所述)如果将名为“CallThisFunctionAndReturnAnArray”的函数替换为“C”,则文件中保存了大量字符。

        3
  •  4
  •   Otávio Décio    16 年前

        4
  •  2
  •   Peter    16 年前

    这绝对有好处。不过,有一些重要的事情要注意。实际上没有理由这样编码。相反,在你完成某事(并以良好的可读形式写作)后,使用缩小器删除不需要的空白等。对于较大的文件,这可以大大减少加载时间。

        5
  •  2
  •   anonymous coward    16 年前

    我会回答说,在这些情况下,“混淆”不是目的,但 。如果您以这样的速度提供可缓存的内容,即减小主页大小将是有益的,那么它 这样做是有道理的。

        6
  •  2
  •   David    16 年前

    如果您使用任何第三方代码,您可能需要在压缩时保持其版权/许可注释不变。人们经常忘记这样做。您可能也希望保留自己的版权评论。

        7
  •  1
  •   Matthew Groves    16 年前

        8
  •  1
  •   Alun Harford    16 年前

        9
  •  1
  •   balpha    16 年前

        10
  •  1
  •   BaroqueBobcat    16 年前

    我敢打赌,他们这样做的主要原因是减小文件大小。较小的文件使页面加载速度更快。

    混淆并不那么重要。此外,根据您的操作方式,它可能会使调试变得困难。

    Speed is everything in search.

        11
  •  1
  •   Alex Rozanski    16 年前

    混淆是 略微 与Javascript文件的另一种常见技术不同,压缩。小型化在Javascript中很常见,因为它可以减小文件大小,而大型文件可以显著减小文件大小(因为大型Javascript文件通常包含大量注释、换行符、不需要的空格等,可以剥离这些内容以减小脚本的大小)。

    隐藏 通过将变量名更改为其他模糊的或从Javascript文件中删除含义的变量名,从其他人那里获取代码。然而,通过这样做,它通常会减小文件大小,因为变量名通常比原始文件中的变量名短得多。这是一种常见的技术,使其他人更难简单地复制代码,而且更多的是保护代码,与其他平台相比,代码显然更容易访问。

    然而: 万无一失-现有的某些工具可以更容易地对混淆的代码进行逆向工程,因此它并不能使其对真正想看看你的脚本是如何工作的人100%安全。

    推荐文章