js 去掉字符串前后空格实现代码集合


Posted in Javascript onMarch 25, 2017

第一种:循环检查替换

//供使用者调用 
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 相关文章推荐
JS实多级联动下拉菜单类,简单实现省市区联动菜单!
May 03 Javascript
javascript 一些用法小结
Sep 11 Javascript
分享28款免费实用的 JQuery 图片和内容滑块插件
Dec 15 Javascript
初识Node.js
Mar 20 Javascript
js控制多图左右滚动切换效果代码分享
Aug 26 Javascript
Ajax分页插件Pagination从前台jQuery到后端java总结
Jul 22 Javascript
原生js的ajax和解决跨域的jsonp(实例讲解)
Oct 16 Javascript
详解使用React全家桶搭建一个后台管理系统
Nov 04 Javascript
angular项目中bootstrap-datetimepicker时间插件的使用示例
Mar 15 Javascript
Bootstrap的aria-label和aria-labelledby属性实例详解
Nov 02 Javascript
如何测量vue应用运行时的性能
Jun 21 Javascript
JavaScript的查询机制LHS和RHS解析
Aug 16 Javascript
在js中做数字字符串补0(js补零)
Mar 25 #Javascript
JavaScript 字符串数字左补位,右补位,取固定长度,截位扩展函数代码
Mar 25 #Javascript
JS去掉字符串前后空格或去掉所有空格的用法
Mar 25 #Javascript
javascript作用域链与执行环境详解
Mar 25 #Javascript
vue中用动态组件实现选项卡切换效果
Mar 25 #Javascript
使用vue.js写一个tab选项卡效果
Mar 25 #Javascript
JavaScript 实现 Tab 点击切换实例代码
Mar 25 #Javascript
You might like
PHP函数常用用法小结
2010/02/08 PHP
深入理解PHP原理之错误抑制与内嵌HTML分析
2011/05/02 PHP
smarty高级特性之对象的使用方法
2015/12/25 PHP
ThinkPHP中类的构造函数_construct()与_initialize()的区别详解
2017/03/13 PHP
php获取ip及网址的简单方法(必看)
2017/04/01 PHP
javascript动态改变img的src属性图片不显示的解决方法
2010/10/20 Javascript
web性能优化之javascript性能调优
2012/12/28 Javascript
web开发人员学习jQuery的6大理由及jQuery的优势介绍
2013/01/03 Javascript
使用命令对象代替switch语句的写法示例
2015/02/28 Javascript
JS中Json数据的处理和解析JSON数据的方法详解
2016/06/29 Javascript
运用js教你轻松制作html音乐播放器
2020/04/17 Javascript
ES6字符串模板,剩余参数,默认参数功能与用法示例
2017/04/06 Javascript
基于JavaScript实现幸运抽奖页面
2020/07/05 Javascript
vue裁切预览组件功能的实现步骤
2018/05/04 Javascript
Node.js Buffer用法解读
2018/05/18 Javascript
详解nodejs 配置文件处理方案
2019/01/02 NodeJs
从零学python系列之从文件读取和保存数据
2014/05/23 Python
python正则表达式re模块详解
2014/06/25 Python
python计算方程式根的方法
2015/05/07 Python
浅谈python 里面的单下划线与双下划线的区别
2017/12/01 Python
Python基于列表模拟堆栈和队列功能示例
2018/01/05 Python
详解flask入门模板引擎
2018/07/18 Python
Python3.5 win10环境下导入kera/tensorflow报错的解决方法
2019/12/19 Python
Python threading.local代码实例及原理解析
2020/03/16 Python
python开发一个解析protobuf文件的简单编译器
2020/11/17 Python
css3和jquery实现的可折叠导航菜单适合放在手机网页的导航菜单
2014/09/02 HTML / CSS
美国体育用品商店:Paragon Sports
2017/10/08 全球购物
写自荐信的七个技巧
2013/10/15 职场文书
专科毕业生学习生活的自我评价
2013/10/26 职场文书
英语自荐信常用语句
2013/12/13 职场文书
跟单文员岗位职责
2014/01/03 职场文书
公司门卫工作职责
2014/06/28 职场文书
自我介绍演讲稿范文
2014/08/21 职场文书
推广普通话共筑中国梦演讲稿
2014/09/21 职场文书
祝酒词范文
2015/08/12 职场文书
2019年感恩励志演讲稿(收藏备用)
2019/09/11 职场文书