首页 > 代码库 > 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工具类
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。