我被告知多年来使用一个有意义的变量名。但是,每当我尝试调试一些JavaScript代码并深入到第三方框架时,我发现每个JavaScript框架都有变量名称,如a
,ac
,b
,c
。
为什么这么短的变量名称是常用的?这似乎会损害可维护性。
答案 0 :(得分:5)
它被称为缩小。它在所有语言中完成,但主要是JavaScript,以从源代码中删除所有不必要的字符。它主要是JavaScript,因为大型JavaScript文件可以做得更小,从而在浏览器中加载更快。
大多数JavaScript库都有可供开发人员使用的版本,这些版本不会缩小,因此可以进行调试,然后在生产中使用缩小版本来减少传输开销。
编写代码时,你应该总是使用合理的变量,但这只是开发人员可以阅读的,浏览器并不关心。
答案 1 :(得分:1)
你最有可能看到缩小的javascript。这是通过minification tool传递原始(并且希望更具可读性)源代码的结果。
答案 2 :(得分:1)
您所看到的可能是实际javascript的缩小版本。这样做是为了减少文件的大小而出于性能原因。
一个很好的例子是jQuery库,你可以查看development version和minified version
答案 3 :(得分:1)
您可能关注的是最小化代码。最小化程序重写Javascript以占用最少的空间,因此它将尽快下载 - 删除不必要的空格,用短名称替换变量和函数,并使用其他一些技巧。
答案 4 :(得分:1)
可能是你正在调试的javascript被缩小了。没有办法将缩小的javascript转换为具有作者所写的有意义名称的原始代码。即使关键字不可读,您也只是利用自己的直觉和分析技能来理解其他代码。
答案 5 :(得分:0)
正如其他人所说,这是缩小版。我对这个主题的贡献只是为了展示一个例子。
举个例子:
(function () {
"use strict";
var foo = function () {
return;
};
var bar = foo;
var baz = bar;
})();
并通过jscompress.com运行。结果将是
(function(){"use strict";var e=function(){return};var t=e;var n=t})()