第一种:循环检查替换[javascript]//供使用者调用function trim(s){return trimRight(trimLeft(s));}//去掉左边的空白function trimLeft(s){if(s == null) {return "";}var whitespace = new String(" /t/n/r");var str = new String(s);if (whitespace.indexOf(str.charAt(0)) != -1) {var j=0, i = str.length;while (j < i && whitespace.indexOf(str.charAt(j)) != -1){j++;}str = str.substring(j, i);}return str;}//去掉右边的空白www.2cto.comfunction trimRight(s){if(s == null) return "";var whitespace = new String(" /t/n/r");var str = new String(s);if (whitespace.indexOf(str.charAt(str.length-1)) != -1){var i = str.length - 1;while (i >= 0 && whitespace.indexOf(str.charAt(i)) != -1){i--;}str = str.substring(0, i+1);}return str;}第二种:正则替换[Javascript]<SCRIPT LANGUAGE="JavaScript"><!--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, "");}//--></SCRIPT>第三种:使用jquery[javascript]$.trim(str)jquery内部实现为:[javascript]function trim(str){ return str.replace(/^(/s|/u00A0)+/,'').replace(/(/s|/u00A0)+$/,'');}第四种:使用motools[javascript]function trim(str){ return str.replace(/^(/s|/xA0)+|(/s|/xA0)+$/g, '');}第五种:裁剪字符串方式[javascript]function trim(str){ str = str.replace(/^(/s|/u00A0)+/,''); for(var i=str.length-1; i>=0; i--){ if(//S/.test(str.charAt(i))){ str = str.substring(0, i+1); break; } } return str;}经过测试第五种方法在处理长字符串时效率最高。
新闻热点
疑难解答