一些js的工具類
復制代碼/** * Created by sevennight on 15-1-31. * 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; } };
復制代碼