js是指什么人吗 淘宝js是什么意思


学习如何使用Crafter CMS构建现代数字体验应用程序 。现在电子书下载 。与Crafter软件合作带来的 。
在这篇文章中,我们将讨论更多的混淆,在哪里使用它,以及它的优点 。

js是指什么人吗 淘宝js是什么意思

文章插图
困惑是什么?混淆是故意制造混淆代码的行为,即让人难以理解的源代码或机器码 。它类似于加密,但机器能够理解代码并能够执行:它 。
我们将用来混淆JavaScript代码的url:
  1. http://closure-compiler.appspot.com/home
  2. http://www.danstools.com/javascript-obfuscate/
使用danstools困惑 。
原始代码:
function hello(name) {
console.log('Hello, ' + name);
}
hello('New user');
混淆后(编者按:此代码块已被格式化为可读性 。在这个代码块下面的屏幕截图中可以看到原始的混淆代码):
function(e) {
return d[e]
}
function(e) {
return d[e]
}(function(e) {
return d[e]
}) {
function(e) {
return d[e]
}.function(e) {
return d[e]
}('function (e){return d[e]}, ' + function(e) {
return d[e]
})
}
function(e) {
return d[e]
}('function (e){return d[e]} function (e){return d[e]}');
两个程序的输出将是相同的:
js是指什么人吗 淘宝js是什么意思

文章插图
混淆可以用来隐藏来自外部世界的业务逻辑,它将大大减少文件的大小,因此服务器和客户机之间的数据传输速度会很快 。
缩小化也是一种混淆,在这里清空空空间,并重新命名变量 。
例子:
  • 缩小文件: http://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.5/angular.min.js
  • 原始文件: http://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.5/angular.js
为什么开源项目会被混淆?
  • 【js是指什么人吗 淘宝js是什么意思】代码大小将会减少 。
  • 在JavaScript中,下载时间会减少
大多数开源JavaScript项目都是为了减少下载时间和代码大小而缩小的 。在缩小过程中,将生成一个缩小的文件和一个映射文件 。使用映射文件,可以检索实际的代码 。上面的角的映射文件文件将是:http://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.5/angular.js.map
为什么困惑?
  • 代码大小将会减少 。
  • 将业务逻辑和代码隐藏起来 。
  • 逆向工程是非常困难的 。
  • 在JavaScript中,下载时间将会减少 。
例子:
js是指什么人吗 淘宝js是什么意思

文章插图
模糊= =加密?
不,困惑!=加密 。
  • 在JavaScript中,浏览器不能执行加密的代码,而浏览器会执行混淆代码 。
  • 加密的代码总是需要解密才能被执行 。
  • 混淆的代码不需要去混淆来执行 。
总之,混淆JavaScript代码很好 。