18520860927 发布h5项目时,发现主程序过大,4、5M这样子。然后我们把主程序做了zlib压缩成几百k。运行时,通过js先加载主程序再解压,然后通过eval 执行主程序,这样的方案可以吗?有没有什么隐患?
sun9278888 可以不用eval执行啊,用innerHTML解析。不过这两种方法都调试不了程序。做一下搬运工,eval()的运行效率也普遍的比其他的替代方案慢,因为他会调用js解析器,即便现代的JS引擎中已经对此做了优化。use eval carefully 。有一种做法,资源服务器一般开启gzip压缩js传送,浏览器下载完再解压,压缩率也很可观,就是消耗一点cpu,再不行就分包。