Javascript 5种方法实现过滤删除前后所有空格


Posted in Javascript onJune 22, 2016

第一种:循环检查替换

//供使用者调用 
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; 
} 

//去掉右边的空白 3water.com 
function 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; 
}

第二种:正则替换

<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>
//去左空格;
function ltrim(s){
  return s.replace(/(^\s*)/g, "");
}
//去右空格;
function rtrim(s){
  return s.replace(/(\s*$)/g, "");
}
//去左右空格;
function trim(s){
  return s.replace(/(^\s*)|(\s*$)/g, "");
}

第三种:使用jquery

$.trim(str)

jquery内部实现为:

function trim(str){  
  return str.replace(/^(\s|\u00A0)+/,'').replace(/(\s|\u00A0)+$/,'');  
}

第四种:使用motools

function trim(str){  
  return str.replace(/^(\s|\xA0)+|(\s|\xA0)+$/g, '');  
}

第五种:裁剪字符串方式

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;  
}

//----------------------------------------------------------
//   去掉字符串前后的空格
//  返回值:
//  去除空格后的字符串
//----------------------------------------------------------
function trim(param) {
  if ((vRet = param) == '') { return vRet; }
  while (true) {
    if (vRet.indexOf (' ') == 0) {
      vRet = vRet.substring(1, parseInt(vRet.length));
    } else if ((parseInt(vRet.length) != 0) && (vRet.lastIndexOf (' ') == parseInt(vRet.length) - 1)) {
      vRet = vRet.substring(0, parseInt(vRet.length) - 1);
    } else {
      return vRet;
    }
  }
}

以上就是本文的全部内容,了解更多JavaScript的语法,大家可以查看:《JavaScript 参考教程》、《JavaScript代码风格指南》,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Jquery 扩展方法
May 06 Javascript
setInterval计时器不准的问题解决方法
May 08 Javascript
jQuery实现个性翻牌效果导航菜单的方法
Mar 09 Javascript
bootstrap组件之导航组件使用方法
Jan 19 Javascript
jQuery Datatables表头不对齐的解决办法
Nov 27 jQuery
详解微信小程序审核不通过的解决方法
Jan 17 Javascript
vue数组对象排序的实现代码
Jun 20 Javascript
JQuery 实现文件下载的常用方法分析
Oct 29 jQuery
小程序自动化测试的示例代码
Aug 11 Javascript
Vue 组件的挂载与父子组件的传值实例
Sep 02 Javascript
详解Javascript实践中的命令模式
May 05 Javascript
关于JS中的作用域中的问题思考分享
Apr 06 Javascript
Json解析的方法小结
Jun 22 #Javascript
JS实现刷新父页面不弹出提示框的方法
Jun 22 #Javascript
JS实现关闭当前页而不弹出提示框的方法
Jun 22 #Javascript
JS随机打乱数组的方法小结
Jun 22 #Javascript
JS产生随机数的几个用法详解
Jun 22 #Javascript
js与applet相互调用的方法
Jun 22 #Javascript
javascript时间戳和日期字符串相互转换代码(超简单)
Jun 22 #Javascript
You might like
php项目中类的自动加载实例讲解
2019/09/12 PHP
Laravel实现通过blade模板引擎渲染视图
2019/10/25 PHP
Yii框架安装简明教程
2020/05/15 PHP
javascript 最常用的10个自定义函数[推荐]
2009/12/26 Javascript
浅谈jquery回调函数callback的使用
2015/01/30 Javascript
JavaScript判断前缀、后缀是否是空格的方法
2015/04/15 Javascript
js控制TR的显示隐藏
2016/03/04 Javascript
JS控制伪元素的方法汇总
2016/04/06 Javascript
学习使用bootstrap的modal和carousel
2016/12/09 Javascript
angularJS 发起$http.post和$http.get请求的实现方法
2017/05/18 Javascript
nodejs后台集成ueditor富文本编辑器的实例
2017/07/11 NodeJs
微信JSSDK调用微信扫一扫功能的方法
2017/07/25 Javascript
React进阶学习之组件的解耦之道
2017/08/07 Javascript
EL表达式截取字符串的函数说明
2017/09/22 Javascript
ES6 class类链式继承,实例化及react super(props)原理详解
2020/02/15 Javascript
JS实现鼠标按下拖拽效果
2020/07/23 Javascript
vue页面引入three.js实现3d动画场景操作
2020/08/10 Javascript
Python实现多线程下载文件的代码实例
2014/06/01 Python
Python写的服务监控程序实例
2015/01/31 Python
Python编程实现双击更新所有已安装python模块的方法
2017/06/05 Python
Python使用matplotlib绘制多个图形单独显示的方法示例
2018/03/14 Python
Python在图片中插入大量文字并且自动换行
2019/01/02 Python
Python3.5 Pandas模块缺失值处理和层次索引实例详解
2019/04/23 Python
python读取raw binary图片并提取统计信息的实例
2020/01/09 Python
Python文件操作方法详解
2020/02/09 Python
在python3中实现查找数组中最接近与某值的元素操作
2020/02/29 Python
深入浅析Python 命令行模块 Click
2020/03/11 Python
服务员岗位职责
2014/01/29 职场文书
网上商城创业计划书范文
2014/01/31 职场文书
查摆问题自我剖析材料
2014/08/18 职场文书
客房部经理岗位职责
2015/02/02 职场文书
2015仓库保管员年终工作总结
2015/05/13 职场文书
nginx 防盗链防爬虫配置详解
2021/03/31 Servers
如何用PHP实现分布算法之一致性哈希算法
2021/05/26 PHP
新手必备Python开发环境搭建教程
2021/05/28 Python
如何使用SQL Server语句创建表
2022/04/12 SQL Server