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

最近在研究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);
黄舟
黄舟

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

reply all (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') 做的是使用者没有传递回调函数的处理
    Latest Downloads
    More>
    Web Effects
    Website Source Code
    Website Materials
    Front End Template
    About us Disclaimer Sitemap
    php.cn:Public welfare online PHP training,Help PHP learners grow quickly!