为什么在js中使用字母作为函数名和参数?

时间:2013-06-20 08:47:39

标签: javascript jquery

(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文件也使用这种方式。所以我想知道这背后的原因是什么?使用字母作为函数名,参数和变量来节省内存或用于什么?

5 个答案:

答案 0 :(得分:1)

这是代码的缩小版本。这意味着缩短函数名称和参数的字符串长度以保留文件大小。

流行的jQuery库也是如此。例如,比较两个版本,minifiedunminified版本。

答案 1 :(得分:1)

它被称为缩小,它既用于混淆(在某种程度上),也用于减少JavaScript代码的整体大小。

像YUICompressor这样的工具会为你做这件事。我将它设置为一个后期构建任务,在部署之前运行我的所有JavaScript。

答案 2 :(得分:0)

您是从jquery.tmpl。 min .js中提取的。 Javascript文件最终被工具最小化,以减少网络带宽和加载速度。

在开发过程中,使用普通变量名来提高可读性。

答案 3 :(得分:0)

因为它已minified。代码运行时不需要完整的变量名,因此开发人员通常会通过工具运行代码来删除冗余材料,以减小尺寸并缩短下载时间。

您可以下载jQuery的完整源代码并使用它,在部署网站时将其替换为缩小版本。

答案 4 :(得分:0)

这是一个缩小的js文件,(因此文件名中为“.min。”)。减少变量名称以节省带宽使用。想想带宽上限或通过慢速网络传输的人,每一点都可以提供帮助。