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 构建客户/服务分离的链接模型中Table分页代码效率初探
Jan 22 Javascript
THREE.JS入门教程(1)THREE.JS使用前了解
Jan 24 Javascript
Jquery动态进行图片缩略的原理及实现
Aug 13 Javascript
设置checkbox为只读(readOnly)的两种方式
Oct 11 Javascript
js读取被点击次数的简单实例(从数据库中读取)
Mar 07 Javascript
图片放大镜jquery.jqzoom.js使用实例附放大镜图标
Jun 19 Javascript
不同编码的页面表单数据乱码问题解决方法
Feb 15 Javascript
JavaScript判断手机号运营商是移动、联通、电信还是其他(代码简单)
Sep 25 Javascript
jQuery simplePage+AJAX plus分页插件用法实例
Feb 17 Javascript
Bootstrap3 datetimepicker控件使用实例
Dec 13 Javascript
laydate只显示时分 不显示秒的功能实现方法
Sep 28 Javascript
javascript实现时钟动画
Dec 03 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 时间日期操作实战
2011/08/26 PHP
CodeIgniter错误mysql_connect(): No such file or directory解决方法
2014/09/06 PHP
php从数组中随机选择若干不重复元素的方法
2015/03/14 PHP
ThinkPHP中create()方法自动验证实例
2017/04/26 PHP
使用ucenter实现多站点同步登录的讲解
2019/03/21 PHP
datePicker——日期选择控件(with jquery)
2007/02/20 Javascript
dwr spring的集成实现代码
2009/03/22 Javascript
js 函数的执行环境和作用域链的深入解析
2009/11/01 Javascript
理解Javascript_10_对象模型
2010/10/16 Javascript
Js切换功能的简单方法
2010/11/23 Javascript
使用jQuery动态加载js脚本文件的方法
2014/04/03 Javascript
IE6-IE9使用JSON、table.innerHTML所引发的问题
2015/12/22 Javascript
JS实现简单的二维矩阵乘积运算
2016/01/26 Javascript
Node.js服务器环境下使用Mock.js拦截AJAX请求的教程
2016/05/23 Javascript
bootstrap输入框组代码分享
2016/06/07 Javascript
一道优雅面试题分析js中fn()和return fn()的区别
2016/07/05 Javascript
JavaScript代理模式原理与用法实例详解
2020/03/10 Javascript
解决vue.js中settimeout遇到的问题(时间参数短效果不稳定)
2020/07/21 Javascript
vue 动态设置img的src地址无效,npm run build 后找不到文件的解决
2020/07/26 Javascript
基于python的汉字转GBK码实现代码
2012/02/19 Python
python中实现定制类的特殊方法总结
2014/09/28 Python
Python中列表和元组的相关语句和方法讲解
2015/08/20 Python
python机器学习实战之K均值聚类
2017/12/20 Python
详解Python_shutil模块
2019/03/15 Python
PyTorch里面的torch.nn.Parameter()详解
2020/01/03 Python
python如何求100以内的素数
2020/05/27 Python
利用python对excel中一列的时间数据更改格式操作
2020/07/14 Python
详解python polyscope库的安装和例程
2020/11/13 Python
Django缓存Cache使用详解
2020/11/30 Python
Python文件操作的面试题
2013/06/22 面试题
数控技术专业推荐信
2013/11/01 职场文书
巾帼文明岗汇报材料
2014/12/24 职场文书
店长岗位职责
2015/02/11 职场文书
导游词之海南-南湾猴岛
2019/10/12 职场文书
Oracle11g r2 卸载干净重装的详细教程(亲测有效已重装过)
2021/06/04 Oracle
Win11局域网共享权限在哪里设置? Win11高级共享的设置技巧
2022/04/05 数码科技