js去掉字符串前后空格的五种方法

第一种:循环检查替换

Js代码   收藏代码
  1. //供使用者调用    
  2. function trim(s){    
  3. return trimRight(trimLeft(s));    
  4. }    
  5. //去掉左边的空白    
  6. function trimLeft(s){    
  7. if(s == null) {    
  8. return "";    
  9. }    
  10. var whitespace = new String(" \t\n\r");    
  11. var str = new String(s);    
  12. if (whitespace.indexOf(str.charAt(0)) != -1) {    
  13. var j=0, i = str.length;    
  14. while (j < i && whitespace.indexOf(str.charAt(j)) != -1){    
  15. j++;    
  16. }    
  17. str = str.substring(j, i);    
  18. }    
  19. return str;    
  20. }    
  21. //去掉右边的空白 www.2cto.com     
  22. function trimRight(s){    
  23. if(s == null) return "";    
  24. var whitespace = new String(" \t\n\r");    
  25. var str = new String(s);    
  26. if (whitespace.indexOf(str.charAt(str.length-1)) != -1){    
  27. var i = str.length - 1;    
  28. while (i >= 0 && whitespace.indexOf(str.charAt(i)) != -1){    
  29. i--;    
  30. }    
  31. str = str.substring(0, i+1);    
  32. }    
  33. return str;    
  34. }   

 


第二种 :正则替换

Js代码   收藏代码
  1. <SCRIPT LANGUAGE="JavaScript">    
  2. <!--    
  3. String.prototype.Trim = function()    
  4. {    
  5. return this.replace(/(^\s*)|(\s*$)/g, "");    
  6. }    
  7. String.prototype.LTrim = function()    
  8. {    
  9. return this.replace(/(^\s*)/g, "");    
  10. }    
  11. String.prototype.RTrim = function()    
  12. {    
  13. return this.replace(/(\s*$)/g, "");    
  14. }    
  15. //-->    
  16. </SCRIPT>   

 



第三种:使用jquery

Js代码   收藏代码
  1. $.trim(str)   
  2. jquery内部实现为:  
  3. [javascript]  
  4. function trim(str){     
  5.     return str.replace(/^(\s|\u00A0)+/,'').replace(/(\s|\u00A0)+$/,'');     
  6. }     

 


第四种:使用motools

Js代码   收藏代码
  1. function trim(str){     
  2.     return str.replace(/^(\s|\xA0)+|(\s|\xA0)+$/g, '');     
  3. }    

 

第五种:裁剪字符串方式 

Js代码   收藏代码
  1. function trim(str){     
  2.     return str.replace(/^(\s|\xA0)+|(\s|\xA0)+$/g, '');     
  3. }    

 


经过测试第五种方法在处理长字符串时效率最高。

转载于:https://www.cnblogs.com/mrxia/p/3804028.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值