javascript - 请大家帮我看一下,这段js代码是什么意思?
黄舟
黄舟 2017-04-11 12:54:07
0
1
350

最近在研究apicloud,看到他们的demo里有一个api.js,里面有一段js我没看明白是什么意思,请大家帮我看一下。代码为:

function parseArguments(url, data, fnSuc, dataType) {
        if (typeof(data) == 'function') {
            dataType = fnSuc;
            fnSuc = data;
            data = undefined;
        }
        if (typeof(fnSuc) != 'function') {
            dataType = fnSuc;
            fnSuc = undefined;
        }
        return {
            url: url,
            data: data,
            fnSuc: fnSuc,
            dataType: dataType
        };
    }

它的使用为:

var argsToJson = parseArguments.apply(null, arguments);
黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全員に返信(1)
巴扎黑

你要看是处理什么的

u.post = function(/*url,data,fnSuc,dataType*/){
        var argsToJson = parseArguments.apply(null, arguments);
        //省略
        api.ajax(.....
        //省略

下面还有get的
处理的是u.post/get传的参数(其实是ajax)。
然后很简单。
参数是按照顺序对应的,url,data,fnSuc,dataType
默认是四个参数:地址、数据、回调、数据类型。
如果我使用时不需要某个参数呢?这个api提供了不需要可以不填且不需占位的方法,然后内部处理,此时可以这么用

u.post(你的url,你的funSuc,你的dataType)
那么此时函数内部的data接收的其实是funSuc,
if (typeof(data) == 'function') 做的是使用者没有传递数据的处理
同理
if (typeof(fnSuc) != 'function') 做的是使用者没有传递回调函数的处理
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!