js去字符串前后空格的实现方法


Posted in Javascript onFebruary 26, 2016

当我们进行一些页面编辑时,字符串前后的空格,通常是无效的。因此需要在获取信息时,进行过滤。

比如:

输入:[空格][空格]a[空格]b[空格][空格][空格]

得到:a[空格]b

代码如下:
去掉前面的空格

function LTrim(str){ 
  var i; 
  for(i=0;i<str.length;i++){
    if(str.charAt(i)!=" ") 
      break; 
  } 
  str = str.substring(i,str.length); 
  return str; 
}

去掉后面的空格

function RTrim(str){ 
  var i; 
  for(i=str.length-1;i>=0;i--){ 
    if(str.charAt(i)!=" ") 
      break; 
  } 
  str = str.substring(0,i+1); 
  return str; 
}

使用方法

function Trim(str){ 
   return LTrim(RTrim(str)); 
 }

【推荐】使用正则的方式

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, ""); 
}

补充一些其他方法:

第一种:循环检查替换

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

第二种:裁剪字符串方式

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

以上就是js去字符串前后空格的多种方法,希望对大家的学习有所帮助。

Javascript 相关文章推荐
XML的代替者----JSON
Jul 21 Javascript
javascript递归回溯法解八皇后问题
Apr 22 Javascript
轻松学习jQuery插件EasyUI EasyUI创建CRUD应用
Nov 30 Javascript
教你JS中的运算符乘方、开方及变量格式转换
Aug 09 Javascript
Node.js的环境安装配置(使用nvm方式)
Oct 11 Javascript
JavaScript 网页中实现一个计算当年还剩多少时间的倒数计时程序
Jan 25 Javascript
AngularJS Toaster使用详解
Feb 24 Javascript
移动前端图片压缩上传的实例
Dec 06 Javascript
浅谈React中的元素、组件、实例和节点
Feb 27 Javascript
JavaScript门道之标准库
May 26 Javascript
js简单实现自动生成表格功能示例
Jun 02 Javascript
vue-cil之axios的二次封装与proxy反向代理使用说明
Apr 07 Vue.js
js判断鼠标位置是否在某个div中的方法
Feb 26 #Javascript
超实用的JavaScript表单代码段
Feb 26 #Javascript
理解javascript中Map代替循环
Feb 26 #Javascript
JS实现随页面滚动显示/隐藏窗口固定位置元素
Feb 26 #Javascript
学习使用jquery iScroll.js移动端滚动条插件
Mar 24 #Javascript
AngularJS整合Springmvc、Spring、Mybatis搭建开发环境
Feb 25 #Javascript
JavaScript 正则表达式中global模式的特性
Feb 25 #Javascript
You might like
PHP实现分页的一个示例
2006/10/09 PHP
php 购物车的例子
2009/05/04 PHP
在PHP中检查PHP文件是否有语法错误的方法
2009/12/23 PHP
PHP的fsockopen、pfsockopen函数被主机商禁用的解决办法
2014/07/08 PHP
PHP模板引擎smarty详细介绍
2015/05/26 PHP
PHP中遍历数组的三种常用方法实例分析
2019/06/24 PHP
静态图片的十一种滤镜效果--不支持Ie7及非IE浏览器。
2007/03/06 Javascript
IE bug table元素的innerHTML
2010/01/11 Javascript
使用jQuery.fn自定义jQuery翻页插件
2013/01/20 Javascript
基于javascript制作经典传统的拼图游戏
2016/03/22 Javascript
JavaScript基础——使用Canvas绘图
2016/11/02 Javascript
利用纯Vue.js构建Bootstrap组件
2016/11/03 Javascript
微信小程序的动画效果详解
2017/01/18 Javascript
Node.JS文件系统解析实例详解
2017/05/15 Javascript
js实现京东轮播图效果
2017/06/30 Javascript
详解Vue2中组件间通信的解决全方案
2017/07/28 Javascript
JS实现百度搜索接口及链接功能实例代码
2018/02/02 Javascript
vue+mousemove实现鼠标拖动功能(拖动过快失效问题解决方法)
2018/08/24 Javascript
解决vue 退出动画无效的问题
2020/08/09 Javascript
9种python web 程序的部署方式小结
2014/06/30 Python
python解析基于xml格式的日志文件
2017/02/25 Python
python实现批量解析邮件并下载附件
2018/06/19 Python
python中的插值 scipy-interp的实现代码
2018/07/23 Python
基于wxPython的GUI实现输入对话框(2)
2019/02/27 Python
python使用配置文件过程详解
2019/12/28 Python
python用WxPython库实现无边框窗体和透明窗体实现方法详解
2020/02/21 Python
Python 通过监听端口实现唯一脚本运行方式
2020/05/05 Python
在HTML5中如何使用CSS建立不可选的文字
2014/10/17 HTML / CSS
GUESS德国官网:美国牛仔服装品牌
2017/02/14 全球购物
京东全球售:直邮香港,澳门,台湾,美国,澳大利亚等地区
2017/09/24 全球购物
构造器Constructor是否可被override?
2013/08/06 面试题
后勤采购员岗位职责
2013/12/19 职场文书
校园学雷锋广播稿
2014/10/08 职场文书
家庭教育教师培训学习体会
2016/01/14 职场文书
如果用一句诗总结你的上半年,你会用哪句呢?
2019/07/16 职场文书
讲解MySQL增删改操作
2022/05/06 MySQL