• 常用的几个方法封装


    常用的方法封装

    $('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)+'亿';
                }
            },
            
        })
    })
    
    
  • 相关阅读:
    tomact配置
    cesium环境配置
    电脑上压缩文件不显示图标的解决办法
    MSCE C#官网一步步学习搬运9 第九章、用C++/CLI编写Addins
    MSCE | MDL二次开发知识点与遇到的问题记录
    MSCE C++官网一步步学习搬运7
    MSCE C++官网一步步学习搬运6
    geotools模块梳理
    geoserver 安全配置
    mapbox去除logo控件和attribution控件
  • 原文地址:https://www.cnblogs.com/angle-xiu/p/14030205.html
Copyright © 2020-2023  润新知