(function (a) {
var r = a.fn.domManip,
d = "_tmplitem",
q = /^[^<]*(<[\w\W]+>)[^>]*$|\{\{\! /,
b = {}, f = {}, e, p = {
key: 0,
data: {}
}, h = 0,
c = 0,
l = [];
function g(e, d, g, i) {
var c = {
data: i || (d ? d.data : {}),
_wrap: d ? d._wrap : null,
tmpl: null,
parent: d || null,
nodes: [],
calls: u,
nest: w,
wrap: x,
html: v,
update: t
};
e && a.extend(c, e, {
nodes: [],
parent: d
});
if (g) {
c.tmpl = g;
c._ctnt = c._ctnt || c.tmpl(a, c);
c.key = ++h;
(l.length ? f : b)[h] = c
}
return c
}
a.each({
appendTo: "append",
prependTo: "prepend",
insertBefore: "before",
insertAfter: "after",
replaceAll: "replaceWith"...
问题:
以上代码取自http://ajax.aspnetcdn.com/ajax/jquery.templates/beta1/jquery.tmpl.min.js。
这里使用了许多字母(a,b,c ......)。我已经看到其他js文件也使用这种方式。所以我想知道这背后的原因是什么?使用字母作为函数名,参数和变量来节省内存或用于什么?
答案 0 :(得分:1)
这是代码的缩小版本。这意味着缩短函数名称和参数的字符串长度以保留文件大小。
流行的jQuery库也是如此。例如,比较两个版本,minified和unminified版本。
答案 1 :(得分:1)
它被称为缩小,它既用于混淆(在某种程度上),也用于减少JavaScript代码的整体大小。
像YUICompressor这样的工具会为你做这件事。我将它设置为一个后期构建任务,在部署之前运行我的所有JavaScript。
答案 2 :(得分:0)
您是从jquery.tmpl。 min .js中提取的。 Javascript文件最终被工具最小化,以减少网络带宽和加载速度。
在开发过程中,使用普通变量名来提高可读性。
答案 3 :(得分:0)
因为它已minified。代码运行时不需要完整的变量名,因此开发人员通常会通过工具运行代码来删除冗余材料,以减小尺寸并缩短下载时间。
您可以下载jQuery的完整源代码并使用它,在部署网站时将其替换为缩小版本。
答案 4 :(得分:0)
这是一个缩小的js文件,(因此文件名中为“.min。”)。减少变量名称以节省带宽使用。想想带宽上限或通过慢速网络传输的人,每一点都可以提供帮助。