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 相关文章推荐
Javascript - HTML的request类
Jul 15 Javascript
jQuery 全选效果实现代码
Mar 23 Javascript
js局部刷新页面时间具体实现
Jul 04 Javascript
document节点对象的获取方式示例介绍
Dec 24 Javascript
js时间比较示例分享(日期比较)
Mar 05 Javascript
js实现二代身份证号码验证详解
Nov 20 Javascript
Javascript模仿淘宝信用评价实例(附源码)
Nov 26 Javascript
浅析JS运动
Dec 28 Javascript
JavaScript中的this使用详解
Jul 27 Javascript
JSON与String互转的实现方法(Javascript)
Sep 27 Javascript
Node.js爬取豆瓣数据实例分析
Mar 05 Javascript
5分钟快速看懂ES6中的反射与代理
Dec 19 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 XML数据解析代码
2010/05/26 PHP
基于在生产环境中使用php性能测试工具xhprof的详解
2013/06/03 PHP
php引用返回与取消引用的详解
2013/06/08 PHP
php支付宝在线支付接口开发教程
2016/09/19 PHP
php 二维数组快速排序算法的实现代码
2017/10/17 PHP
thinkphp5 加载静态资源路径与常量的方法
2017/12/24 PHP
javascript数组操作总结和属性、方法介绍
2014/04/05 Javascript
js控制容器隐藏出现防止样式变化的两种方法
2014/04/25 Javascript
仿淘宝TAB切换搜索框搜索切换的相关内容
2014/09/21 Javascript
让JavaScript和其它资源并发下载的方法
2014/10/16 Javascript
Javascript 构造函数详解
2014/10/22 Javascript
超棒的响应式布局jQuery插件Freetile.js
2014/11/17 Javascript
基于HTML模板和JSON数据的JavaScript交互(移动端)
2016/04/06 Javascript
jquery版轮播图效果和extend扩展
2017/07/18 jQuery
使用react-router4.0实现重定向和404功能的方法
2017/08/28 Javascript
Three.js利用orbit controls插件(轨道控制)控制模型交互动作详解
2017/09/25 Javascript
详解基于DllPlugin和DllReferencePlugin的webpack构建优化
2018/06/28 Javascript
解决vue.js this.$router.push无效的问题
2018/09/03 Javascript
VUE兄弟组件传值操作实例分析
2019/10/26 Javascript
Python的Django框架中settings文件的部署建议
2015/05/30 Python
Python下rrdtool模块的基本使用方法
2015/11/13 Python
python根据txt文本批量创建文件夹
2020/12/08 Python
Gauss-Seidel迭代算法的Python实现详解
2019/06/29 Python
python 实现一个反向单位矩阵示例
2019/11/29 Python
Python 中由 yield 实现异步操作
2020/05/04 Python
canvas绘制圆角头像的实现方法
2019/01/17 HTML / CSS
Marriott中国:万豪国际酒店查询预订
2016/09/02 全球购物
阿波罗盒子:Apollo Box
2017/08/14 全球购物
瑞典度假品牌:OAS
2019/05/28 全球购物
阿玛尼美妆俄罗斯官网:Giorgio Armani Beauty RU
2020/07/19 全球购物
违反工作纪律检讨书
2014/02/15 职场文书
青奥会口号
2014/06/12 职场文书
党员创先争优心得体会
2014/09/11 职场文书
2014年计划生育协会工作总结
2014/11/14 职场文书
正规借条模板
2015/05/26 职场文书
公司环境卫生管理制度
2015/08/05 职场文书