0

我有一个 js 文件(requirejs api),我试图理解,但无法理解

前几行:

var requirejs,require,define;
(function(ba){
    function J(b){
        return"[object Function]"===N.call(b)
        }
        function K(b){
        return"[object Array]"===N.call(b)
        }
        function z(b,c){
        if(b){
            var d;
            for(d=0;d<b.length&&(!b[d]||!c(b[d],d,b));d+=1);
        }
    }
    function O(b,c){
    if(b){
        var d;
        for(d=b.length-1;-1<d&&(!b[d]||!c(b[d],d,b));d-=1);
    }
}

加载此 js 的父页面调用了方法require()但我在整个文件中看不到任何此类函数定义。那么论据 ba 是如何处理的呢?“b”是来自ba吗?这个文件是由模糊处理制成的吗?所有函数都命名为 a() , b() 等

4

1 回答 1

1

这是 RequireJS 的缩小版本。只需打开带有评论的完整版本:

http://requirejs.org/docs/release/2.1.6/comments/require.js

在缩小过程中,为了节省字节,变量名经常被替换为短的。例如,hereJ(b)指的是 methodisFunction(it)K(b)to isArray(it),而z(b,c)看起来像each(ary, func)and O(b,c)is eachReverse(ary, func)

于 2013-06-06T10:25:01.533 回答