javascript引擎如何理解缩小的JS脚本?

时间:2011-05-25 18:28:17

标签: javascript minify

通常,如果明文是压缩的,那么必须有解压缩程序。 js引擎如何解释缩小的压缩js脚本?

js引擎是否具有内置的去除算法?

4 个答案:

答案 0 :(得分:6)

它不需要解压缩,缩小代码仍然是javascript,人类更难阅读。

答案 1 :(得分:4)

首先,您需要了解缩小和压缩之间存在差异。

<强> 1。缩小不压缩

缩小是通过删除额外的空格,将变量名称更改为较短的空格等来将JavaScript减少到尽可能少的字节的过程。文件的编码和字符保持不变。由于缩小的文件实际上并没有改变编码或功能,因此没有任何东西可以将文件转换回来,因为没有真正改变。

<强> 2。压缩会更改文件

压缩文件时,比如使用gzip,您将文件或流的数据重新编码为占用更少空间的不同编码。在这种情况下,需要使用解压缩例程将文件转换回其未压缩状态。未压缩时,文件将返回其原始状态。

第3。浏览器使用压缩和微型化的组合来实现尽可能小的带宽占用。

缩小和压缩的好处在于它们是两个独立的进程,它们分别执行两个操作,它们可以组合在一起,尽可能地将少量文件传递给浏览器。例如,现在最初的jQuery源代码超过200K,但是通过minifcation并传送压缩文件,只需要大约30K的带宽即可传送到浏览器。

答案 2 :(得分:2)

缩小的javascript仍然是javascript。可以将其视为删除空格并将长变量重命名为较短的变量。

答案 3 :(得分:1)

缩小的JavaScript只是相同的代码,但缩写(例如var foobar = 2可能在var a = 2之前;)

GZipped JavaScript文件(和其他静态文件)是真正压缩的,并且在引擎使用之前确实会被客户端机器解压缩。

浏览器将向服务器标识它可以通过类似于

的标题访问压缩内容

Accept-Encoding:gzip,deflate

相关问题