//recon 的思路: //------------- //去掉字串左边的空格 function ltrim(str) { if (str.charat(0) == " ") { //如果字串左边第一个字符为空格 str = str.slice(1);//将空格从字串中去掉 //这一句也可改成 str = str.substring(1, str.length); str = ltrim(str); //递归调用 } return str; } //去掉字串右边的空格 function rtrim(str) { var ilength; ilength = str.length; if (str.charat(ilength - 1) == " ") { //如果字串右边第一个字符为空格 str = str.slice(0, ilength - 1);//将空格从字串中去掉 //这一句也可改成 str = str.substring(0, ilength - 1); str = rtrim(str); //递归调用 } return str; } //去掉字串两边的空格 function trim(str) { return ltrim(rtrim(str)); } //雨天5337 的思路: //---------------- function alltrim(a_strvarcontent) { var pos1, pos2, newstring; pos1 = 0; pos2 = 0; newstring = "" if ( a_strvarcontent.length > 0 ) { for( i=0; i<=a_strvarcontent.length; i++) //recon: 这句应该有错误,应改成: //for( i=0; i<a_strvarcontent.length; i++) { if ( a_strvarcontent.charat(i) == " " ) pos1 = pos1 + 1; else break; } for( i=a_strvarcontent.length; i>=0 ; i--) //recon: 这句应该有错误,应改成: //for( i=a_strvarcontent.length-1; i>=0 ; i--) { if ( a_strvarcontent.charat(i) == " " ) pos2 = pos2 + 1; else break; } newstring = a_strvarcontent.substring(pos1, a_strvarcontent.length-pos2) } return newstring; } //hooke 的思路: //------------- function jtrim(sstr) { var astr=""; var dstr=""; var flag=0; for (i=0;i<sstr.length;i++) {if ((sstr.charat(i)!=' ')||(flag!=0)) {dstr+=sstr.charat(i); flag=1; } } flag=0; for (i=dstr.length-1;i>=0;i--) {if ((dstr.charat(i)!=' ')||(flag!=0)) {astr+=dstr.charat(i); flag=1; } } dstr=""; for (i=astr.length-1;i>=0;i--) dstr+=astr.charat(i); return dstr; } 为什么不用正则表达式? String.prototype.Trim = function() { return this.replace(/(^s*)|(s*$)/g, ""); }
推荐阅读
Javascript实例教程(19) 使用HoTMetal(3)
HoTMetal中使用javascript3.什么样的资源适合于脚本编写 当利用HotMetal PRO 6.0编写宏的时候,你可以使用以下几种资源:预定义事件HoTMetaL PRO 6.0定义了几个事件以及特殊的用户定义的宏来处理它们。这些宏应该根>>>详细阅读
本文标题:js中几种去掉字串左右空格的方法
地址:http://www.17bianji.com/kaifa2/JS/31220.html
1/2 1