    //防抖函数
    function delayPrint(delay, callback){
        let timer = null;

        return function(value,maxn){/*注意点一：在返回该函数时无法确定的参数都要在这里接收而不是在父级形参中接收。例如在本例中，返回该函数时无法确定keyup的值，所以在这里要接收。*/
            if(timer){
                clearInterval(timer);
            }

            timer = setTimeout(function(){
                callback(value,maxn) /*注意点二：这里是function(){callback(val)}，而不是直接放callback(val)，直接放callback(val)是函数调用。*/
            },delay);
        }

    }

    //防抖函数

// var 新的函数 = delayPrint(时间,老的函数名)
//     新的函数() //调用新的函数

// 节流函数，比如用在窗口大小改变的事件
function throttle(fn, interval) {
    // last为上一次触发回调的时间
    var last = 0;
    // 将throttle处理结果当作函数返回
    return function () {
        // 保留调用时的this上下文
        var context = this
        // 保留调用时传入的参数
        var args = arguments
        // 记录本次触发回调的时间
        var now = +new Date()
        // 判断上次触发的时间和本次触发的时间差是否小于时间间隔的阈值
        if (now - last >= interval) {
            // 如果时间间隔大于我们设定的时间间隔阈值，则执行回调
            last = now;
            fn.apply(context, args);
        }
    }
}

function getQueryString() {
    var qs = location.search.substr(1), // 获取url中"?"符后的字串
        args = {}, // 保存参数数据的对象
        items = qs.length ? qs.split("&") : [], // 取得每一个参数项,
        item = null,
        len = items.length;

    for(var i = 0; i < len; i++) {
        item = items[i].split("=");
        var name = decodeURIComponent(item[0]),
            value = decodeURIComponent(item[1]);
        if(name) {
            args[name] = value;
        }
    }
    return args;
}



function getnewtimefn(value) {
//value要转化的标准时间
    const dateTme = new Date(value)
    const Y = dateTme.getFullYear()
    const M = dateTme.getMonth() + 1 < 10 ? "0" + (dateTme.getMonth() + 1) : dateTme.getMonth() + 1
    const D = dateTme.getDate() < 10 ? "0" + dateTme.getDate() : dateTme.getDate()
    const h = dateTme.getHours()< 10 ? "0" + dateTme.getHours() : dateTme.getHours()
    const m = dateTme.getMinutes() < 10 ? "0" + dateTme.getMinutes() : dateTme.getMinutes()
    const s = dateTme.getSeconds() < 10 ? "0" + dateTme.getSeconds() : dateTme.getSeconds()
    return  Y + "-" + M + "-" + D + " " + h + ":" + m  + ":" + s

}

function getdata(type) {
    let date = new Date(),
        year = date.getFullYear(), //获取完整的年份(4位)
        month = date.getMonth() + 1, //获取当前月份(0-11,0代表1月)
        day = date.getDate() // 获取当前日(1-31)

    if(type == 'year'){
        return year
    }else if(type == 'month'){
        return month
    }else if(type == 'day'){
        return day
    }
}

    function toChinesNum  (num)  {
        let changeNum = ['零', '一', '二', '三', '四', '五', '六', '七', '八', '九']; //changeNum[0] = "零"
        let unit = ["", "十", "百", "千", "万"];
        num = parseInt(num);
        let getWan = (temp) => {
            let strArr = temp.toString().split("").reverse();
            let newNum = "";
            for (var i = 0; i < strArr.length; i++) {
                newNum = (i == 0 && strArr[i] == 0 ? "" : (i > 0 && strArr[i] == 0 && strArr[i - 1] == 0 ? "" : changeNum[strArr[i]] + (strArr[i] == 0 ? unit[0] : unit[i]))) + newNum;
            }
            return newNum;
        }
        let overWan = Math.floor(num / 10000);
        let noWan = num % 10000;
        if (noWan.toString().length < 4) noWan = "0" + noWan;
        return overWan ? getWan(overWan) + "万" + getWan(noWan) : getWan(num);

    }

    function getQueryString() {
        //获得路径上的值
        var qs = location.search.substr(1), // 获取url中"?"符后的字串
            args = {}, // 保存参数数据的对象
            items = qs.length ? qs.split("&") : [], // 取得每一个参数项,
            item = null,
            len = items.length;

        for(var i = 0; i < len; i++) {
            item = items[i].split("=");
            var name = decodeURIComponent(item[0]),
                value = decodeURIComponent(item[1]);
            if(name) {
                args[name] = value;
            }
        }
        return args;
    }
    async function getyudatefn(save_key) {

        var p = new Promise((resolve)=> {
            $.ajax({
                url:'/common/getPolicyDetail?saveKey='+save_key,
                type:"get",
                success:function(data, textStatus,xhr){
                    resolve(data)

                },
                error:function(xhr){

                    layer.msg('服务器开小差稍后再试', {icon: 2})

                }
            })
        })
        return p

    }