|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
string .length 汉字为两个字符处理 .Tlength -------------------------------------------------------------------------------- <script> /* This following code are designed and writen by Windy_sk <seasonx@163.net> You can use it freely, but u must held all the copyright items! */ //测字符串实际长度 String.prototype.Tlength = function(){var arr=this.match(/[^/x00-/xff]/ig);return this.length+(arr==null?0:arr.length);} //字符串左取 String.prototype.left = function(num,mode){if(!//d+/.test(num))return(this);var str = this.substr(0,num);if(!mode) return str;var n = str.Tlength() - str.length;num = num - parseInt(n/2);return this.substr(0,num);} //字符串右取 String.prototype.right = function(num,mode){if(!//d+/.test(num))return(this);var str = this.substr(this.length-num);if(!mode) return str;var n = str.Tlength() - str.length;num = num - parseInt(n/2);return this.substr(this.length-num);} //字符串包含 String.prototype.GetCount = function(str,mode){return eval("this.match(/("+str+")/g"+(mode?"i":"")+").length");} //字符串去除两端空字符 String.prototype.Trim=function(){return this.replace(/(^/s*)|(/s*$)/g,"");} String.prototype.Ltrim = function(){return this.replace(/(^/s*)/g, "");} String.prototype.Rtrim = function(){return this.replace(/(/s*$)/g, "");} document.write("\\\'aa啦啦aa\\\'.Tlength() = " + "aa啦啦aa".Tlength()); document.write("<br>"); document.write("\\\'aabbcc\\\'.Tlength() = " + "aabbcc".Tlength()); document.write("<br>"); document.write("\\\'aa啦啦aa\\\'.left(4) = " + "aa啦啦aa".left(4)); document.write("<br>"); document.write("\\\'aa啦啦aa\\\'.left(4,true) = " + "aa啦啦aa".left(4,true)); document.write("<br>"); document.write("\\\'aa啦啦aa\\\'.right(4) = " + "aa啦啦aa".right(4)); document.write("<br>"); document.write("\\\'aa啦啦aa\\\'.right(4,true) = " + "aa啦啦aa".right(4,true)); document.write("<br>"); document.write("\\\'abAcae\\\'.GetCount(\\\'a\\\') = " + "abAcae".GetCount("a")); document.write("<br>"); document.write("\\\'abAcae\\\'.GetCount(\\\'a\\\',true) = " + "abAcae".GetCount("a",true)); document.write("<br>"); document.write("\\\' abc de \\\'.Ltrim() = " + " abc de ".Ltrim()); document.write("<br>"); document.write("\\\' abc de \\\'.Rtrim() = " + " abc de ".Rtrim()); document.write("<br>"); document.write("\\\' abc de \\\'.Trim() = " + " abc de ".Trim()); </script> 再来几个函数,getCookie(),getQuery(),DateDiff(),DateAdd(),b2s(),原+改 -------------------------------------------------------------------------------- function getCookie(mainKey,subKey) { var reg = new RegExp("(^| )"+mainKey+"=([^;]*)(;|$)"); var arr = document.cookie.match(reg); if (arguments.length == 2) { if (arr!=null) return key(subKey,arr[2]); else return null; } else if (arguments.length == 1) { if (arr!=null) return unescape(arr[2]); else return null; } function key(subKey,findWith) { var arr,reg = new RegExp("(^| |&)"+subKey+"=([^&]*)(&|$)"); var findWith = findWith?findWith:document.cookie; if (arr = findWith.match(reg)) return unescape(arr[2]); else return null; } } function getQuery(name) { var reg = new RegExp("(^|&)"+name+"=([^&]*)(&|$)"); var r = location.search.substr(1).match(reg) if (r!=null) return unescape(r[2]); } function DateAdd(strInterval, NumDay, dtDate) { var dtTmp = new Date(dtDate); if (isNaN(dtTmp)) dtTmp = new Date(); switch (strInterval) { case "s":return new Date(Date.parse(dtTmp) + (1000 * NumDay)); case "n":return new Date(Date.parse(dtTmp) + (60000 * NumDay)); case "h":return new Date(Date.parse(dtTmp) + (3600000 * NumDay)); case "d":return new Date(Date.parse(dtTmp) + (86400000 * NumDay)); case "w":return new Date(Date.parse(dtTmp) + ((86400000 * 7) * NumDay)); case "m":return new Date(dtTmp.getFullYear(), (dtTmp.getMonth()) + NumDay, dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds()); case "y":return new Date((dtTmp.getFullYear() + NumDay), dtTmp.getMonth(), dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds()); } } // DateDiff("m","2002/12/1 00:00:00","2004/12/1 00:00:00") function DateDiff(strInterval, dtStart, dtEnd) { var dtStart = new Date(dtStart); if (isNaN(dtStart)) dtStart = new Date(); var dtEnd = new Date(dtEnd); if (isNaN(dtEnd)) dtEnd = new Date(); switch (strInterval) { case "s":return parseInt((dtEnd - dtStart) / 1000); case "n":return parseInt((dtEnd - dtStart) / 60000); case "h":return parseInt((dtEnd - dtStart) / 3600000); case "d":return parseInt((dtEnd - dtStart) / 86400000); case "w":return parseInt((dtEnd - dtStart) / (86400000 * 7)); case "m":return (dtEnd.getMonth()+1)+((dtEnd.getFullYear()-dtStart.getFullYear())*12) - (dtStart.getMonth()+1); case "y":return dtEnd.getFullYear() - dtStart.getFullYear(); } } // b2s("11新浪网!@#程序员_+}{:><") function b2s(strng) { var Matches = strng.match(/[/x21-/x7e]/g); for (var i=0;i<Matches.length;i++) { strng = strng.replace(Matches[i],String.fromCharCode(Matches[i].charCodeAt (0)+65248)) } return strng; } 来几个,IE5下原型扩展 -------------------------------------------------------------------------------- /*Number Object*/ if(!Number.prototype.toFixed) { Number.prototype.toFixed = function(n) { with(Math) return round(Number(this)*pow(10,n))/pow(10,n) } } /*Array Object*/ if (!Array.prototype.pop) { Array.prototype.pop = function() { var lastElement = this[this.length-1]; this.length = Math.max(this.length-1,0); return lastElement; } } if (!Array.prototype.push) { Array.prototype.push = function() { for(var i=0;i<arguments.length;i++) { this[this.length]=arguments[i]; } return this.length; } } if (!Array.prototype.shift) { Array.prototype.shift = function() { var firstElement = this[0]; this.reverse(); this.pop(); this.reverse(); return firstElement; } } if (!Array.prototype.splice) { Array.prototype.splice = function() { var start = arguments[0]; var deleteCount = start+arguments[1]; var deleteItem = this.slice(start,deleteCount); var beforeItem = this.slice(0,start); var afterItem = this.slice(deleteCount); this.length=beforeItem.length; var i; for (i=2;i<arguments.length;this[this.length]=arguments[i++]); for (i=0;i<afterItem.length;this[this.length]=afterItem[i++]); return deleteItem; } } if (!Array.prototype.unshift) { Array.prototype.unshift = function() { var arr = new Array(); for (var i=0;i<arguments.length;arr[i]=arguments[i++]); arr = arr.concat(this); this.length = 0; for (i=0;i<arr.length;this[i]=arr[i++]); } } 返回类别: 教程 上一教程: 开放源码-SMTP发信客户端 for Java 下一教程: FreeMarker设计指南(2) 您可以阅读与"javascript 函数原型"相关的教程: · Applet调用JavaScript函数 · java迅速排序函数 · 加快图片显示(JAVASCRIPT) · 正则表达式在javascript中的几个实例2 · 递归函数之JAVA演绎 |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |