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 相关文章推荐
用javascript实现页面打印的三种方法
Mar 05 Javascript
javascript下给元素添加事件的方法与代码
Aug 13 Javascript
语义化 H1 标签
Jan 14 Javascript
jquery 利用show和hidden实现级联菜单示例代码
Aug 09 Javascript
用html5 js实现点击一个按钮达到浏览器全屏效果
May 28 Javascript
node爬取微博的数据的简单封装库nodeweibo使用指南
Jan 02 Javascript
jQuery使用hide方法隐藏页面上指定元素的方法
Mar 30 Javascript
利用HTML5的画布Canvas实现刮刮卡效果
Sep 06 Javascript
基于JavaScript实现跳转提示页面
Sep 24 Javascript
jQuery EasyUI Layout实现tabs标签的实例
Sep 26 jQuery
Bootstrap 3多级下拉菜单实例
Nov 23 Javascript
改进 JavaScript 和 Rust 的互操作性并深入认识 wasm-bindgen 组件
Jul 13 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
星际争霸 Starcraft 秘技补丁
2020/03/14 星际争霸
ThinkPHP中的三大自动简介
2014/08/22 PHP
PHP redis实现超迷你全文检索
2017/03/04 PHP
Javascript中3个需要注意的运算符
2015/04/02 Javascript
jQuery下拉友情链接美化效果代码分享
2015/08/26 Javascript
JavaScript+html5 canvas实现图片破碎重组动画特效
2016/02/22 Javascript
jQuery插件开发汇总
2016/05/15 Javascript
js实现一个可以兼容PC端和移动端的div拖动效果实例
2016/12/09 Javascript
JS实现全屏的四种写法
2016/12/30 Javascript
原生JS中slice()方法和splice()区别
2017/03/06 Javascript
vue.js 使用v-if v-else发现没有执行解决办法
2017/05/15 Javascript
webpack构建vue项目的详细教程(配置篇)
2017/07/17 Javascript
webpack中使用iconfont字体图标的方法
2018/02/22 Javascript
vue做移动端适配最佳解决方案(亲测有效)
2018/09/04 Javascript
vue-cli3跨域配置的简单方法
2019/09/06 Javascript
解决layui弹框失效的问题
2019/09/09 Javascript
vue 解决在微信内置浏览器中调用支付宝支付的情况
2020/11/09 Javascript
JavaScript前后端JSON使用方法教程
2020/11/23 Javascript
详解Django缓存处理中Vary头部的使用
2015/07/24 Python
基于Python的文件类型和字符串详解
2017/12/21 Python
使用Python处理BAM的方法
2018/09/28 Python
利用python循环创建多个文件的方法
2018/10/25 Python
selenium处理元素定位点击无效问题
2019/06/12 Python
tensorflow -gpu安装方法(不用自己装cuda,cdnn)
2020/01/20 Python
Python基于requests库爬取网站信息
2020/03/02 Python
浅谈keras中自定义二分类任务评价指标metrics的方法以及代码
2020/06/11 Python
关于礼仪的演讲稿
2014/01/04 职场文书
2014年应届大学生毕业自我鉴定
2014/01/31 职场文书
2014年营业员工作总结
2014/11/18 职场文书
2015年党员公开承诺书范文
2015/01/22 职场文书
2015年政务公开工作总结
2015/05/19 职场文书
青春雷锋观后感
2015/06/10 职场文书
单位证明范文
2015/06/18 职场文书
一定要知道的 25 个 Vue 技巧
2021/11/02 Vue.js
Android studio 简单计算器的编写
2022/05/20 Java/Android
nginx七层负载均衡配置详解
2022/07/15 Servers