js常用工具类.

来源:互联网 发布:scala 数组 切分 编辑:程序博客网 时间:2024/06/14 07:45

一些js的工具类

/** * js常用工具类 *//** * 方法作用:【格式化时间】 * 使用方法 * 示例: *      使用方式一: *      var now = new Date(); *      var nowStr = now.dateFormat("yyyy-MM-dd hh:mm:ss"); *      使用方式二: *      new Date().dateFormat("yyyy年MM月dd日"); *      new Date().dateFormat("MM/dd/yyyy"); *      new Date().dateFormat("yyyyMMdd"); *      new Date().dateFormat("yyyy-MM-dd hh:mm:ss"); * @param format {date} 传入要格式化的日期类型 * @returns {2015-01-31 16:30:00} */Date.prototype.dateFormat = function (format){    var o = {        "M+" : this.getMonth()+1, //month        "d+" : this.getDate(), //day        "h+" : this.getHours(), //hour        "m+" : this.getMinutes(), //minute        "s+" : this.getSeconds(), //second        "q+" : Math.floor((this.getMonth()+3)/3), //quarter        "S" : this.getMilliseconds() //millisecond    }    if(/(y+)/.test(format)) {        format = format.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));    }    for(var k in o) {        if(new RegExp("("+ k +")").test(format)) {            format = format.replace(RegExp.$1, RegExp.$1.length==1 ? o[k] : ("00"+ o[k]).substr((""+ o[k]).length));        }    }    return format;}/*********************************************************************** *                           日期时间工具类                            * *                     注:调用方式,deteUtil.方法名                   * * ********************************************************************/var dateUtil = {    /*     * 方法作用:【取传入日期是星期几】     * 使用方法:dateUtil.nowFewWeeks(new Date());     * @param date{date} 传入日期类型     * @returns {星期四,...}     */    nowFewWeeks:function(date){        if(date instanceof Date){            var dayNames = new Array("星期天","星期一","星期二","星期三","星期四","星期五","星期六");            return dayNames[date.getDay()];        } else{            return "Param error,date type!";        }    },    /*     * 方法作用:【字符串转换成日期】     * 使用方法:dateUtil.strTurnDate("2010-01-01");     * @param str {String}字符串格式的日期,传入格式:yyyy-mm-dd(2015-01-31)     * @return {Date}由字符串转换成的日期     */    strTurnDate:function(str){        var   re   =   /^(\d{4})\S(\d{1,2})\S(\d{1,2})$/;        var   dt;        if   (re.test(str)){            dt   =   new   Date(RegExp.$1,RegExp.$2   -   1,RegExp.$3);        }        return dt;    },    /*     * 方法作用:【计算2个日期之间的天数】     * 传入格式:yyyy-mm-dd(2015-01-31)     * 使用方法:dateUtil.dayMinus(startDate,endDate);     * @startDate {Date}起始日期     * @endDate {Date}结束日期     * @return endDate - startDate的天数差     */    dayMinus:function(startDate, endDate){        if(startDate instanceof Date && endDate instanceof Date){            var days = Math.floor((endDate-startDate)/(1000 * 60 * 60 * 24));            return days;        }else{            return "Param error,date type!";        }    }};/*********************************************************************** *                           加载工具类                                * *                     注:调用方式,loadUtil.方法名                   * * ********************************************************************/var loadUtil = {    /*     * 方法说明:【动态加载js文件css文件】     * 使用方法:loadUtil.loadjscssfile("http://libs.baidu.com/jquery/1.9.1/jquery.js","js")     * @param fileurl 文件路径,     * @param filetype 文件类型,支持传入类型,js、css     */    loadjscssfile:function(fileurl,filetype){        if(filetype == "js"){            var fileref = document.createElement('script');            fileref.setAttribute("type","text/javascript");            fileref.setAttribute("src",fileurl);        }else if(filetype == "css"){            var fileref = document.createElement('link');            fileref.setAttribute("rel","stylesheet");            fileref.setAttribute("type","text/css");            fileref.setAttribute("href",fileurl);        }        if(typeof fileref != "undefined"){            document.getElementsByTagName("head")[0].appendChild(fileref);        }else{            alert("loadjscssfile method error!");        }    }};/*********************************************************************** *                           字符串操作工具类                          * *                     注:调用方式,strUtil.方法名                   * * ********************************************************************/var strUtil = {    /*     * 判断字符串是否为空     * @param str 传入的字符串     * @returns {}     */    isEmpty:function(str){        if(str != null && str.length > 0){            return true;        }else{            return false;        }    },    /*     * 判断两个字符串子否相同     * @param str1     * @param str2     * @returns {Boolean}     */    isEquals:function(str1,str2){        if(str1==str2){            return true;        }else{            return false;        }    },    /*     * 忽略大小写判断字符串是否相同     * @param str1     * @param str2     * @returns {Boolean}     */    isEqualsIgnorecase:function(str1,str2){        if(str1.toUpperCase() == str2.toUpperCase()){            return true;        }else{            return false;        }    },    /**     * 判断是否是数字     * @param value     * @returns {Boolean}     */    isNum:function (value){        if( value != null && value.length>0 && isNaN(value) == false){            return true;        }else{            return false;        }    },    /**     * 判断是否是中文     * @param str     * @returns {Boolean}     */    isChine:function(str){        var reg = /^([u4E00-u9FA5]|[uFE30-uFFA0])*$/;        if(reg.test(str)){            return false;        }        return true;    }};