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 相关文章推荐
JS修改css样式style浅谈
May 06 Javascript
js简单实现删除记录时的提示效果
Dec 05 Javascript
jQuery Checkbox 全选 反选的简单实例
Nov 29 Javascript
javascript 闭包详解及简单实例应用
Dec 31 Javascript
discuz表情的JS提取方法分析
Mar 22 Javascript
关于axios返回空对象的问题解决
Apr 04 Javascript
JavaScript函数表达式详解及实例
May 05 Javascript
JavaScript 保护变量不被随意修改的实现代码
Sep 27 Javascript
Vue获取页面元素的相对位置的方法示例
Feb 05 Javascript
你不知道的 TypeScript 高级类型(小结)
Aug 28 Javascript
vue 监听 Treeselect 选择项的改变操作
Aug 31 Javascript
何时使用Map来代替普通的JS对象
Apr 29 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面向对象全攻略 (七) 继承性
2009/09/30 PHP
PHP图片验证码制作实现分享(全)
2012/05/10 PHP
php 模拟get_headers函数的代码示例
2013/04/27 PHP
php array_values 返回数组的值实例详解
2016/11/17 PHP
php实现的PDO异常处理操作分析
2018/12/27 PHP
浅谈PHP匿名函数和闭包
2019/03/08 PHP
PHP下载大文件失败并限制下载速度的实例代码
2019/05/10 PHP
Yii框架模拟组件调用注入示例
2019/11/11 PHP
动手学习无线电
2021/03/10 无线电
javascript 年月日联动实现核心代码
2009/12/21 Javascript
js 获取服务器控件值的代码
2010/03/05 Javascript
javascript实现阻止iOS APP中的链接打开Safari浏览器
2014/06/12 Javascript
js中通过父级进行查找定位元素
2014/06/15 Javascript
Javascript必知必会(四)js类型转换
2016/06/08 Javascript
javascript实现随机生成DIV背景色
2016/06/20 Javascript
canvas滤镜效果实现代码
2017/02/06 Javascript
jQuery EasyUI Layout实现tabs标签的实例
2017/09/26 jQuery
vue 组件使用中的一些细节点
2018/04/25 Javascript
初步探究Python程序的执行原理
2015/04/11 Python
Python中最常用的操作列表的几种方法归纳
2015/04/24 Python
python 循环遍历字典元素的简单方法
2016/09/11 Python
python 实现一次性在文件中写入多行的方法
2019/01/28 Python
python模拟菜刀反弹shell绕过限制【推荐】
2019/06/25 Python
利用Python小工具实现3秒钟将视频转换为音频
2019/10/29 Python
python matplotlib拟合直线的实现
2019/11/19 Python
python 创建一维的0向量实例
2019/12/02 Python
python的scipy.stats模块中正态分布常用函数总结
2021/02/19 Python
车间工艺员岗位职责
2013/12/09 职场文书
行政部总经理岗位职责
2014/01/04 职场文书
父亲八十大寿答谢词
2014/01/23 职场文书
销售员个人求职的自我评价
2014/02/10 职场文书
2016七夕情人节广告语
2016/01/28 职场文书
高三数学复习备考教学反思
2016/02/18 职场文书
《兰兰过桥》教学反思
2016/02/20 职场文书
探究Mysql模糊查询是否区分大小写
2021/06/11 MySQL
nodejs利用readline提示输入内容实例代码
2021/07/15 NodeJs