
现在会用原生 Javascript 写点东西,Vue 粗略地学了一些皮毛,还没学完。经常看到别人网站放的 JS 外链里面,都是很难看懂的 JS 。比如这个。请问这种是用 JS 框架(比如 Vue )写好以后编译成成品的样子?还是说作者故意为了压缩尺寸弄成这个样子?感觉可读性很差
1 natsji Jun 7, 2020 via Android Chrome 有 js 美化插件,安装一下就行了 |
2 ByteRan Jun 7, 2020 |
3 ysc3839 Jun 7, 2020 是框架编译后的样子,也是故意压缩尺寸。这些代码只是为了能执行,不是为了给人看的。 |
4 snw Jun 7, 2020 主要为了减小文件大小,顺便降低可读性给仿站稍稍增加难度。 |
5 systemcall Jun 8, 2020 via Android 加了混淆,有那种工具 |
6 sneezry Jun 8, 2020 via iPhone 主要是压缩代码,提高加载速度,节省带宽资源。压缩的策略也并不神秘,几个典型的例子: 1 、更换变量名。好的变量名能让代码更容易被人读懂,但变量名叫 priceForSingleItem 还是叫 a 对电脑来说都一样,所以压缩代码时,变量名从 a 到 z 换着用,不够了还有 aa,ab 。 2 、更换代码逻辑表达方式。if 能让代码逻辑更加清晰,比如 if (year % 4 === 0 && year % 100 !== 0 || year % 400 === 0) { console.log("闰年"); },压缩后就可能变成(!a%4&&a%100||!a%400)&&console.log("闰年"),这两段代码执行结果是一样的。 |
7 em70 Jun 8, 2020 故意的 |
8 Doracis Jun 8, 2020 有一些 js 是压缩后的,比如你看的大多数 xxx.min.js 都是这种的,如果你想读一读,建议找 xxx.js, 不是压缩版的通常要大一些,为了加载速度,挂网站上的大多都是压缩后的了 |
9 AV1 Jun 8, 2020 这是混淆压缩优化后的代码呀,减小体积,加快速度。给机器执行的东西,要可读性干什么?干嘛要读它? |
10 wizardoz Jun 8, 2020 1. 保护了源码 2. 节省了带宽 |
11 zzzmh Jun 8, 2020 可读性很差才是正常的,可读性强还得了?爬虫满天飞,盗版遍地走 |
12 sudoy OP |
14 shuangya Jun 8, 2020 via Android 1.压缩体积,减小带宽。 2.混淆代码,一定程度上防止破解。 3.可运行,比如 JSX/Vue 的语法一般是不能或者不推荐直接运行的。 4.兼容性,打包的时候会进行一些向下兼容,比如 async 、const 之类的会转成低版本浏览器兼容的语法。 |