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

最近在研究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') 做的是使用者没有传递回调函数的处理
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!