今天学到的一个知识,并不是很完整的,希望能帮到一些开发者解决小问题。
一.js函数前面加分的作用
总是看到网上别人发布的一些源码的函数名的前面会加上分号,就很好奇加分号的作用是什么,于是就去百度了一下,作用见下文,如有错误和不完整的地方,欢迎大神们知道纠正。
- 防止多文件集成成一个文件后,高压缩出现语法错误。
- 这是一个匿名函数,一般js库都采用这种自执行的匿名函数来保护内部变量 (function(){})();
- 防止多文件集成成一个文件后,高压缩出现语法错误。
- 这是一个匿名函数,一般js库都采用这种自执行的匿名函数来保护内部变量 (function(){})();
二.封装好的mui的ajax请求函数
这是一个封装好的mui框架的ajax请求函数,它可以用来处理请求超时的自动回调函数,重新请求。
;mui.web_query = function(func_url, params, onSuccess, onError, retry){
var onSuccess = arguments[2]?arguments[2]:function(){};
var onError = arguments[3]?arguments[3]:function(){};
var retry = arguments[4]?arguments[4]:3;
func_url = 'http://www.xxxxxx.com/ajax/?fn=' + func_url;
mui.ajax(func_url, {
data:params,
dataType:'json',
type:'post',
timeout:3000,
success:function(data){
if(data.err === 'ok'){
onSuccess(data);
}
else{
onError(data.code);
}
},
error:function(xhr,type,errorThrown){
retry--;
if(retry > 0) return mui.web_query(func_url, params, onSuccess, onError, retry);
onError('FAILED_NETWORK');
}
})
};
调用时的语句:
<pre name="code" class="html" style="font-size: 18px; font-weight: bold;">var params = {per:10, pageno:coms_current_pageno}; mui.web_query(url, params, onSuccess, onError, 3); //这里的url是你想要调用的API的接口地址,params你想要提交的函数,3是你自定义的超时时限