小白一枚,js代码求解读

我今天在网上找到了一个源码,想 问 一 下 各 位 大 佬 这 是 什 么 意 思?

<script type="text/javascript">
    eval(function(p, a, c, k, e, d) {
        e = function(c) {
            return (c < a ? "": e(parseInt(c / a))) + ((c = c % a) > 35 ? String.fromCharCode(c + 29) : c.toString(36))
        };
        if (!''.replace(/^/, String)) {
            while (c--) d[e(c)] = k[c] || e(c);
            k = [function(e) {
                return d[e]
            }];
            e = function() {
                return '\\w+'
            };
            c = 1
        };
        while (c--) if (k[c]) p = p.replace(new RegExp('\\b' + e(c) + '\\b', 'g'), k[c]);
        return p
    } ('b a(){0 6=1.2("9").4;0 5=1.2("3");0 3=1.2("3").c;0 8=5.e[3].4;0 7=1.2("f");7.d=8+6}', 16, 16, 'var|document|getElementById|jk|value|jkurl|diz|cljurl|jkv|url|dihejk|function|selectedIndex|src|options|player'.split('|'), 0, {}))
</script>

貌似是加密,还有正则
12.9编辑:抱歉,忘记了代码美化。

压缩过的代码,这看起来也太难受了,自己一点点拆分,慢慢看也能看,花点时间

随便打开个编译器,把代码粘进去,就这样根据括号按对拆开成不同的行,不就好看了
那么长在一行谁能看懂呀

<script type="text/javascript">
eval(
    function(p,a,c,k,e,d)
    {
        e=function(c){
            return(c<a?"":e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))
        };
        if(!''.replace(/^/,String))
        {
            while(c--)
                d[e(c)]=k[c]||e(c);
            k=[function(e){return d[e]}];e=function(){return'\\w+'};
            c=1
        };
        while(c--)
        if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);
        return p
    }
    ('b a(){0 6=1.2("9").4;0 5=1.2("3");0 3=1.2("3").c;0 8=5.e[3].4;0 7=1.2("f");7.d=8+6}',16,16,
    'var|document|getElementById|jk|value|jkurl|diz|cljurl|jkv|url|dihejk|function|selectedIndex|src|options|player'.split('|'),0,{})
)
</script>