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和Asp、Php等后端程序间传值编码统一
Apr 17 Javascript
window.location.hash 使用说明
Nov 08 Javascript
jquery修改属性值实例代码(设置属性值)
Jan 06 Javascript
浅析javascript中的DOM
Mar 01 Javascript
JS实现文件动态顺序载入的方法
Mar 07 Javascript
自动适应iframe右边的高度
Dec 22 Javascript
基于JavaScript实现选项卡效果
Jul 21 Javascript
十个免费的web前端开发工具详细整理
Sep 18 Javascript
JavaScript获取用户所在城市及地理位置
Apr 21 Javascript
深度了解vue.js中hooks的相关知识
Jun 14 Javascript
转换layUI的数据表格中的日期格式方法
Sep 19 Javascript
layui 数据表格复选框实现单选功能的例子
Sep 19 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
海贼王动画变成“真人”后,凯多神还原,雷利太帅了!
2020/04/09 日漫
Discuz! Passport 通行证整合
2008/03/27 PHP
PHP改进计算字符串相似度的函数similar_text()、levenshtein()
2014/10/27 PHP
PHP使用逆波兰式计算工资的方法
2015/07/29 PHP
thinkPHP数据查询常用方法总结【select,find,getField,query】
2017/03/15 PHP
thinkPHP5框架中widget的功能与用法详解
2018/06/11 PHP
详解在YII2框架中使用UEditor编辑器发布文章
2018/11/02 PHP
根据分辨率不同,调用不同的css文件
2006/07/07 Javascript
JavaScript 面向对象的之私有成员和公开成员
2010/05/04 Javascript
eclipse导入jquery包后报错的解决方法
2014/02/17 Javascript
创建、调用JavaScript对象的方法集锦
2014/12/24 Javascript
JavaScript运动框架 解决速度正负取整问题(一)
2017/05/17 Javascript
NodeJS实现图片上传代码(Express)
2017/06/30 NodeJs
JS抛物线动画实例制作
2018/02/24 Javascript
使用 Vue 实现一个虚拟列表的方法
2019/08/20 Javascript
Javascript实现贪吃蛇小游戏(含详细注释)
2020/10/23 Javascript
[52:02]完美世界DOTA2联赛PWL S2 FTD.C vs SZ 第一场 11.27
2020/11/30 DOTA
Python学习笔记(二)基础语法
2014/06/06 Python
Python实现的生成自我描述脚本分享(很有意思的程序)
2014/07/18 Python
python写入中英文字符串到文件的方法
2015/05/06 Python
Python中的模块导入和读取键盘输入的方法
2015/10/16 Python
使用Kivy将python程序打包为apk文件
2017/07/29 Python
python实现手机销售管理系统
2019/03/19 Python
Python unittest工作原理和使用过程解析
2020/02/24 Python
Python APScheduler执行使用方法详解
2020/12/10 Python
html5实现微信打飞机游戏
2014/03/27 HTML / CSS
女士和男士时尚鞋在线购物:Shoespie
2019/02/28 全球购物
阿迪达斯香港官网:adidas香港
2019/11/09 全球购物
下面关于"联合"的题目的输出是什么
2013/08/06 面试题
Oracle中delete,truncate和drop的区别
2016/05/05 面试题
关于VPN
2012/06/10 面试题
英文推荐信格式范文
2014/05/09 职场文书
企业安全生产目标责任书
2014/07/23 职场文书
2014年四风个人对照检查及整改措施
2014/10/28 职场文书
手把手教你实现PyTorch的MNIST数据集
2021/06/28 Python
分析SQL窗口函数之取值窗口函数
2022/04/21 Oracle