首页 > 代码库 > js工具类

js工具类

技术分享

  1 /**************************     2  **********************************************************************************************/  3   4 /**************************************************************  5  获取文本框的值并转换成Float类型返回  6 **************************************************************/  7 function $Float(el) {  8     return Util.parseFloat($F(el));  9 } 10  11 /************************************************************** 12  获取文本框的值并转换成Integer类型返回 13 **************************************************************/ 14 function $Integer(el) { 15     return Util.parseInteger($F(el)); 16 } 17  18 /************************************************************** 19  设置文本框的值 20 **************************************************************/ 21 function $Set(el, value) { 22     $(el).value =http://www.mamicode.com/ value; 23 } 24  25 /************************************************************** 26  工具类Util 27 **************************************************************/ 28 var Util = {}; 29  30 /************************************************************** 31  格式化字符串,使用方式类似java中的String.format()方法 32 **************************************************************/ 33 Util.format = function(format) { 34     var args = []; 35     for(var i = 1; i < arguments.length; i++) { 36         args.push(arguments[i]); 37     } 38  39     return format.replace(/\{(\d+)\}/g, function(m, i) { 40         return args[i]; 41     }); 42 } 43  44 /************************************************************** 45 判断字符串是否为空 46 **************************************************************/ 47 Util.strIsEmpty = function(str) { 48     return str == null || !str || typeof str == undefined || str == ‘‘; 49 } 50  51 /************************************************************** 52 将传入值转换成整数 53 **************************************************************/ 54 Util.parseInteger = function(v) { 55     if(typeof v == ‘number‘) { 56         return v; 57     } else if(typeof v == ‘string‘) { 58         var ret = parseInt(v); 59  60         if(isNaN(ret) || !isFinite(ret)) { 61             return 0; 62         } 63  64         return ret; 65     } else { 66         return 0; 67     } 68 } 69  70 /************************************************************** 71 将传入值转换成小数 72 **************************************************************/ 73 Util.parseFloat = function(v) { 74     if(typeof v == ‘number‘) { 75         return v; 76     } else if(typeof v == ‘string‘) { 77         var ret = parseFloat(v); 78         if(isNaN(ret) || !isFinite(ret)) { 79             return 0; 80         } 81  82         return ret; 83     } else { 84         return 0; 85     } 86 } 87  88 /************************************************************** 89 将传入值转换成小数,传入值可以是以逗号(,)分隔的数字,此方法将会过滤掉(,) 90 **************************************************************/ 91 Util.parseDotFloat = function(v) { 92     if(typeof v == ‘number‘) { 93         return v; 94     } else if(typeof v == ‘string‘) { 95         v = v.replace(/[^\d|.]/g, ‘‘); 96         v = parseFloat(v); 97  98         if(isNan(v) || !isFinite(v)) { 99             return 0100         }101         return ret;102     } else {103         return 0;104     }105 }106 107 /**************************************************************108  添加事件109 **************************************************************/110 Util.addEventListener = function(element, event, handler, param) {111     param.scope = param.scope || element;112 113     if(typeof element == ‘string‘) {114         element = $(element);115     }116 117     var h = function() {118         handler.call(param.scope, param);119     }120 121     if(element.attachEvent) {122         element.attachEvent(‘on‘ + event, h);123 124     } else if(element.addEventListener) {125         element.addEventListener(event, h, false);126 127     } else {128         element[‘on‘ + event] = h;129     }130 }131 132 /**************************************************************133 检查标签值是否为空,当为空时提示134 135 @param el {Element, string}检查的标签136 @param msg {string}提示消息,当检查失败时提示137 @return true检查通过,标签的值不空,false标签值为空 138 **************************************************************/139 Util.checkIsNotEmpty = function(el, msg) {140     if(typeof el == ‘string‘) {141         el = $(el);142     }143 144     if(Util.strIsEmpty(el.value)) {145         alert(msg);146         if(!el.disabled) {147             el.focus();148             el.select();149         }150         return false;151     }152     return true;153 }154 155 /**************************************************************156 字符串传换成date类型157 158 @str {string}字符串格式表示的日期,格式为:yyyy-mm-dd159 @return {Date}由str转换得到的Date对象160 **************************************************************/161 Util.str2date = function(str) {162     var re = /^(\d{4})\S(\d{1,2})\S(\d{1,2})$/;163     var dt;164     if(re.test(str)) {165         dt = new Date(RegExp.$1, RegExp.$2 - 1, RegExp.$3);166     }167     return dt;168 }169 170 /**************************************************************171 计算2个日期之间的天数172 173 @day1 {Date}起始日期174 @day2 {Date}结束日期175 @return day2 - day1的天数差176 **************************************************************/177 Util.dayMinus = function(day1, day2) {178     var days = Math.floor((day2 - day1) / (1000 * 60 * 60 * 24));179     return days;180 }181 182 /**************************************************************183 设置组合列表框选择项184 185 @param combo 组合列表框186 @param value 选择值187 @param defaultIdx 默认选中项的序号188 **************************************************************/189 Util.setComboSelected = function(combo, value, defaultIdx) {190     if(typeof combo == ‘string‘) {191         combo = $(combo);192     }193 194     var idx = defaultIdx;195     if(typeof defaultIdx == ‘undefined‘) {196         idx = -1;197     }198 199     for(var i = 0, len = combo.options.length; i < len; ++i) {200         var v = combo.options[i].value;201         if(v == value) {202             idx = i;203             break;204         }205     }206 207     combo.selectedIndex = idx;208 }209 210 /**************************************************************211 字符串转换成日期 212 @param str {String}字符串格式的日期213 @return {Date}由字符串转换成的日期214 **************************************************************/215 Util.str2date = function(str) {216     var re = /^(\d{4})\S(\d{1,2})\S(\d{1,2})$/;217     var dt;218     if(re.test(str)) {219         dt = new Date(RegExp.$1, RegExp.$2 - 1, RegExp.$3);220     }221     return dt;222 }223 224 /**************************************************************225  计算2个日期间的天数差226  227 @param day1 {Date}开始日期228 @param day2 {Date}结束日期229 @return 天数差230 **************************************************************/231 Util.dayInterval = function(day1, day2) {232     var days = Math.floor((day2 - day1) / (1000 * 60 * 60 * 24));233     return days;234 }

 

js工具类