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 相关文章推荐
jQuery产品间断向下滚动效果核心代码
May 08 Javascript
sliderToggle在写jquery的计时器setTimeouter中不生效
May 26 Javascript
jQuery中[attribute=value]选择器用法实例
Dec 31 Javascript
jquery及js实现动态加载js文件的方法
Jan 21 Javascript
node.js操作mysql简单实例
May 25 Javascript
layui.js实现的表单验证功能示例
Nov 15 Javascript
JavaScript面向对象继承原理与实现方法分析
Aug 09 Javascript
JS判断数组里是否有重复元素的方法小结
May 21 Javascript
七行JSON代码把你的网站变成移动应用过程详解
Jul 09 Javascript
layui上传图片到服务器的非项目目录下的方法
Sep 26 Javascript
微信小程序自定义菜单切换栏tabbar组件代码实例
Dec 30 Javascript
vue+elementUI实现表格列的显示与隐藏
Apr 13 Vue.js
在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
mysql 中InnoDB和MyISAM的区别分析小结
2008/04/15 PHP
PHP 错误之引号中使用变量
2009/05/04 PHP
PHP通用检测函数集合
2011/02/08 PHP
PHP读取CURL模拟登录时生成Cookie文件的方法
2014/11/04 PHP
功能强大的PHP POST提交数据类
2016/07/15 PHP
php 使用redis锁限制并发访问类示例
2016/11/02 PHP
PHP绕过open_basedir限制操作文件的方法
2018/06/10 PHP
js实现DIV的一些简单控制
2007/06/04 Javascript
ASP.NET jQuery 实例4(复制TextBox的文本到本地剪贴板上)
2012/01/13 Javascript
JS实现一键回顶功能示例代码
2013/10/28 Javascript
javascript if条件判断方法小结
2014/05/17 Javascript
JavaScript弹出新窗口后向父窗口输出内容的方法
2015/04/06 Javascript
canvas实现流星雨的背景效果
2017/01/13 Javascript
React Native模块之Permissions权限申请的实例相机
2017/09/28 Javascript
完美解决axios跨域请求出错的问题
2018/02/05 Javascript
详解从Vue-router到html5的pushState
2018/07/21 Javascript
vue.js的vue-cli脚手架中使用百度地图API的实例
2019/01/21 Javascript
JS开发自己的类库实例分析
2019/08/28 Javascript
JS随机密码生成算法
2019/09/23 Javascript
[51:26]DOTA2上海特级锦标赛主赛事日 - 2 胜者组第一轮#3Secret VS OG第二局
2016/03/03 DOTA
Python连接SQLServer2000的方法详解
2017/04/19 Python
python计算日期之间的放假日期
2018/06/05 Python
Python开发网站目录扫描器的实现
2019/02/21 Python
Django Admin中增加导出CSV功能过程解析
2019/09/04 Python
使用 Supervisor 监控 Python3 进程方式
2019/12/05 Python
python yield和Generator函数用法详解
2020/02/10 Python
python matplotlib imshow热图坐标替换/映射实例
2020/03/14 Python
python网络编程之五子棋游戏
2020/05/14 Python
python openCV自制绘画板
2020/10/27 Python
html5图片上传预览示例分享
2014/04/14 HTML / CSS
用canvas画心电图的示例代码
2018/09/10 HTML / CSS
HTML5页面无缝闪开的问题及解决方案
2020/06/11 HTML / CSS
SISLEY希思黎官方旗舰店:享誉全球的奢华植物美容品牌
2018/04/25 全球购物
中学生期末评语
2014/02/03 职场文书
医学生求职信
2014/07/01 职场文书
2016年119消防宣传日活动总结
2016/04/05 职场文书