Javascript 为什么谷歌';s闭包编译器是否会留下一些不必要的空格或换行符?
我注意到,每次使用时,页面右侧的编译代码中都会留下一些不必要的空格。这些对应于编译代码的宿主版本中的换行符 例如(请注意换行符,每个换行符似乎都是不必要的): 到目前为止,我只是手动删除它们,但我很好奇它们为什么会出现。是为了限制托管版本代码的行长度以使其更具可读性吗? 编译器是否足够聪明,可以有意地保留或插入这些代码,以最大限度地提高GZIP压缩效果 我知道它们对文件大小的影响很小,但在缩小源代码脚本中的每一个字节方面付出了巨大的努力,这与我们的直觉背道而驰 为什么编译脚本中会有随机换行? 闭包编译器有意每隔500个字符左右添加换行符。防火墙和代理有时会损坏或忽略行非常长的大型JavaScript文件。每500个字符添加一次换行符可以防止此问题。删除换行符对脚本的语义没有影响。对代码大小的影响很小,并且编译器优化了换行符的位置,因此当文件被gzip压缩时,代码大小的损失更小Javascript 为什么谷歌';s闭包编译器是否会留下一些不必要的空格或换行符?,javascript,google-closure,google-closure-compiler,minify,Javascript,Google Closure,Google Closure Compiler,Minify,我注意到,每次使用时,页面右侧的编译代码中都会留下一些不必要的空格。这些对应于编译代码的宿主版本中的换行符 例如(请注意换行符,每个换行符似乎都是不必要的): 到目前为止,我只是手动删除它们,但我很好奇它们为什么会出现。是为了限制托管版本代码的行长度以使其更具可读性吗? 编译器是否足够聪明,可以有意地保留或插入这些代码,以最大限度地提高GZIP压缩效果 我知道它们对文件大小的影响很小,但在缩小源代码脚本中的每一个字节方面付出了巨大的努力,这与我们的直觉背道而驰 为什么编译脚本中会有随机换行?
你知道这很聪明!:) 我无法访问该链接,该链接返回的页面“内容长度”为0。你能在你的问题中粘贴(部分)代码吗?很抱歉,我假设谷歌无限期地托管编译后的代码,但显然他们没有。我更新了上面问题中的链接。最疯狂的事情是谷歌PageSpeed Insights抱怨几个字节(太棒了,这就解决了问题了!我还没有看到常见问题解答-感谢链接,我感谢你的回答。最疯狂的事情是谷歌PageSpeed Insights抱怨几个字节(@JoseNobile)我最近在Java应用程序中遇到了这个换行符问题。我解决了这个问题,手动删除了闭包编译器引入的换行符。