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 相关文章推荐
让您的菜单不离网站
Oct 03 Javascript
JavaScript 基础知识 被自己遗忘的
Oct 15 Javascript
js定义对象或数组直接量时各浏览器对多余逗号的处理(json)
Mar 05 Javascript
用js代码改变单选框选中状态的简单实例
Dec 18 Javascript
jQuery性能优化的38个建议
Mar 04 Javascript
微信小程序 支付后台java实现实例
May 09 Javascript
angularjs 获取默认选中的单选按钮的value方法
Feb 28 Javascript
vue-cli 为项目设置别名的方法
Oct 15 Javascript
javascript自定义右键菜单插件
Dec 16 Javascript
JS图片预加载三种实现方法解析
May 08 Javascript
JS中队列和双端队列实现及应用详解
Sep 29 Javascript
详解JS WebSocket断开原因和心跳机制
May 07 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
ThinkPHP采用实现三级循环代码实例
2014/07/18 PHP
完整删除ecshop中获取店铺信息的API
2014/12/24 PHP
PHP number_format函数原理及实例解析
2020/07/14 PHP
TP5多入口设置实例讲解
2020/12/15 PHP
jqPlot jquery的页面图表绘制工具
2009/07/25 Javascript
页面中js执行顺序
2009/11/09 Javascript
javascript多种数据类型表格排序代码分析
2010/09/11 Javascript
js获取class的所有元素
2013/03/28 Javascript
js自动下载文件到本地的实现代码
2013/04/28 Javascript
Bootstrap中datetimepicker使用小结
2016/12/28 Javascript
BootStrap Fileinput初始化时的一些参数
2016/12/30 Javascript
nodejs动态创建二维码的方法
2017/08/12 NodeJs
centos 上快速搭建ghost博客方法分享
2018/05/23 Javascript
vue初始化动画加载的实例
2018/09/01 Javascript
浅谈Webpack核心模块tapable解析
2018/09/11 Javascript
开发一个Parcel-vue脚手架工具(详细步骤)
2018/09/22 Javascript
vue-cli2 构建速度优化的实现方法
2019/01/08 Javascript
[01:15:12]DOTA2上海特级锦标赛主赛事日 - 1 败者组第一轮#4Newbee VS CDEC
2016/03/03 DOTA
python绘制条形图方法代码详解
2017/12/19 Python
shell命令行,一键创建 python 模板文件脚本方法
2018/03/20 Python
python通过伪装头部数据抵抗反爬虫的实例
2018/05/07 Python
python逆序打印各位数字的方法
2018/06/25 Python
Django框架模型简单介绍与使用分析
2019/07/18 Python
利用 PyCharm 实现本地代码和远端的实时同步功能
2020/03/23 Python
Python网络爬虫四大选择器用法原理总结
2020/06/01 Python
浅谈PyTorch中in-place operation的含义
2020/06/27 Python
pycharm配置python 设置pip安装源为豆瓣源
2021/02/05 Python
纯CSS3实现移动端展开和收起效果的示例代码
2020/04/26 HTML / CSS
Tarte Cosmetics官网:美国最受欢迎的化妆品公司之一
2017/08/24 全球购物
2013年高中生自我评价
2013/10/23 职场文书
有针对性的求职自荐信
2013/11/14 职场文书
心得体会开头
2014/01/01 职场文书
大学军训感言1500字
2014/03/09 职场文书
建筑工地宣传标语
2014/06/18 职场文书
领导班子个人对照检查剖析材料
2014/09/29 职场文书
励志语录:你若不勇敢,谁替你坚强
2019/11/08 职场文书