常用的几个方法封装

  • A+
所属分类:Web前端

常用的方法封装

$('document').ready(function () {     $.extend({         /*Function sendAjax          * @param: obj Object          * obj.url 地址必填           * obj.modelData 数据选填           */         sendAjax: function (obj) {             // 检测用户是否输入             if(!obj.url){                 console.error('请填写url地址');                 return false;             }             // 请求参数格式化,均以json格式进行传参             var data = JSON.stringify(obj.modelData) || {};             $.ajax({                 url:obj.url,                 data:data,                 contentType:'application/json',                 dataType:'json',                 async:ture,             }).done(function(res){                 switch(res.code){                     // 请求成功                     case 1:                         obj.success && obj.success(res);                         break;                     case 911:{                         // 无权限                         var redirectUrl = window.location.href;                         window.location.href = res.url+'?redirect'+encodeURIComponent(redirectUrl);                         break;                     }                     default:                         if(obj.fail()){                             obj.fail(res);                         }else                             alert('接口错误');                                      }             })          },         /*          * @Function timeChange            * @param:           * source: String 需要转换的时间          * inFormat: String 传入的时间格式          * outFormat: Strign 输出的时间格式          */         timeChange:function(source,inFormat,outFormat){             //个位补零             var checkTime = function(){                 if(time <10){                     return "0"+time;                 }             };             // 根据输入的时间格式来进行转换,2指的是第二个捕获组             switch (inFormat){                 case 'Y-m-d H:i:s':                     var reg = /^(d{1,4})(-|/)(d{1,2})2(d{1,2}) (d{1,2}):(d{1,2}):(d{1,2})$/;                     source = source.match(reg);                     source = new Date(source[1],source[3]-1,source[4],source[5],source[6],source[7]);                     break;                 case 'Y-m-d' :                     var reg = /^(d{1,4})(-|/)(d{1,2})2(d{1,2})$/;                     source = source.match(reg);                     source = new Date(source[1],source[3]-1,source[4])                     break;                 case 'timestamp':                     // 通常时间戳按秒记录,JavaScript是按毫秒计算                     source = new Date(parseInt(source)*1000);                     break;                     // 毫秒的时间戳                 case 'millisecond':                     source = new Date(parseInt(source));                     break;             }             // 输出时间             switch(outFormat){                 case 'Y-m-d H:i:s':                     return source.getFullYear()                     +'-'                     +checkTime(source.getMonth()+1)                     +'-'                     +checkTime(source.getDate())                     +' '                     +checkTime(source.getHours())                     +':'                     +checkTime(source.getMinutes())                     +':'                     +checkTime(source.getSecond());                     break;                 case 'Y-m-d':                     return source.getFullYear()                     +'-'                     +checkTime(source.getMonth()+1)                     +'-'                     +checkTime(source.getDate());                     break;                 case 'Y-m-d H:i':                     return source.getFullYear()                     +'-'                     +checkTime(source.getMonth()+1)                     +'-'                     +checkTime(source.getDate())                     +' '                     +checkTime(source.getHours())                     +':'                     +checkTime(source.getMinutes());                     break;                 case 'Y.m.d':                     return source.getFullYear()                     +'.'                     +checkTime(source.getMonth()+1)                     +'.'                     +checkTime(source.getDate());                     break;             }         },         // 比较数组全等         /*Function compareJson          * @param:           * json1 Object 传入的对象           * json2 Object           */         compareJson:function(json1,json2){             for(let atr in json1){                 // 检测键是否一致                 if(json2[atr] === undefined)                 return false;                 // 检测值是否一致                 if(json1[atr] !== json2[atr])                 return false;             }         },         // 数字转换         /*Function numFormat          * @param:           * number Number  传入的数字          * fixedNum Number  保留的小数点位数          */         numFormate:function(number,fixedNum){             // 判断是否为数字             if(typeof number !== Number){                 console.log('请检查输入的是否为数字');                 return false;             }             if(number<10000)             return number;             var level = null;             if(number/10000 >1 )              level = '万';             if(number/10000000 > 1)             level = '亿';             // 默认保留两位             if(!fixedNum)             fixedNum = 2;             switch(level){                 case '万':                     return (number/10000).toFixed(fixedNum)+'万';                     break;                 case '亿':                     return (num/100000000).toFixed(fixedNum)+'亿';             }         },              }) })