js trim函数 去空格函数与正则集锦


Posted in Javascript onNovember 20, 2009

但是如果项目没有用到jQuery等框架的话,js本身又没有这样的函数,我们不得不自己写这样的函数,下面是函数的具体实现:

//供使用者调用 
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; 
} 
//去掉右边的空白 
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; 
}

使用时只需调用trim函数即可。
下面是用正则的实现方法:
<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> 
<input type="text" value="    前后都是空格   " id="space"> 
<input type="button" value="去前后空格" onclick="javascript:document.getElementById('space').value=document.getElementById('space').value.Trim();document.getElementById('space').select();"> 
<input type="button" value="去前空格" onclick="javascript:document.getElementById('space').value=document.getElementById('space').value.LTrim();document.getElementById('space').select();"> 
<input type="button" value="去后空格" onclick="javascript:document.getElementById('space').value=document.getElementById('space').value.RTrim();document.getElementById('space').select();"> 
<input type="button" value="还原" onclick="javascript:document.getElementById('space').value='    前后都是空格     ';">

上面的代码因为编辑器的问题,空格被替换了,所以大家请注意添加空格,测试。
Javascript 相关文章推荐
js实时监听文本框状态的方法
Apr 26 Javascript
Express作者TJ告别Node.js奔向Go
Jul 14 Javascript
jQuery通过点击行来删除HTML表格行的实现示例
Sep 10 Javascript
javascript设计模式之中介者模式Mediator
Dec 30 Javascript
Node.js实用代码段之正确拼接Buffer
Mar 17 Javascript
jQuery简单实现彩色云标签效果示例
Aug 01 Javascript
详解如何在 vue 项目里正确地引用 jquery 和 jquery-ui的插件
Jun 01 jQuery
vue脚手架vue-cli的学习使用教程
Jun 06 Javascript
Es6 Generator函数详细解析
Feb 24 Javascript
微信小程序开发实现消息推送
Nov 18 Javascript
vue 实现cli3.0中使用proxy进行代理转发
Oct 30 Javascript
react使用antd的上传组件实现文件表单一起提交功能(完整代码)
Jun 29 Javascript
div移动 输入框不能输入的问题
Nov 19 #Javascript
ExtJS Window 最小化的一种方法
Nov 18 #Javascript
JS获取dom 对象 ajax操作 读写cookie函数
Nov 18 #Javascript
jquery中的$(document).ready()与window.onload的区别
Nov 18 #Javascript
jQuery html()等方法介绍
Nov 18 #Javascript
JQuery toggle使用分析
Nov 16 #Javascript
JavaScript OOP类与继承
Nov 15 #Javascript
You might like
Smarty局部缓存的几种方法简介
2014/06/17 PHP
利用PHP实现开心消消乐的算法示例
2017/10/12 PHP
PHP htmlspecialchars()函数用法与实例讲解
2019/03/08 PHP
键盘控制事件应用教程大全
2006/11/24 Javascript
Javascript 陷阱 window全局对象
2008/11/26 Javascript
JavaScript高级程序设计 阅读笔记(十三) js定义类或对象
2012/08/14 Javascript
JS保存、读取、换行、转Json报错处理方法
2013/06/14 Javascript
js判断设备是否为PC并调整图片大小
2014/02/12 Javascript
AngualrJS中每次$http请求时的一个遮罩层Directive
2016/01/26 Javascript
前端js文件合并的三种方式推荐
2016/05/19 Javascript
浅谈js中的延迟执行和定时执行
2016/05/31 Javascript
再谈javascript常见错误及解决方法
2016/09/16 Javascript
JavaScript函数参数的传递方式详解
2017/03/06 Javascript
JS给按钮添加跳转功能类似a标签
2017/05/30 Javascript
详解Chai.js断言库API中文文档
2018/01/31 Javascript
浅析js中mvvm模式实现的原理
2018/10/06 Javascript
详解如何创建并发布一个 vue 组件
2018/11/08 Javascript
详解JS浏览器事件循环机制
2019/03/27 Javascript
详细讲解如何创建, 发布自己的 Vue UI 组件库
2019/05/29 Javascript
javascript设计模式 ? 适配器模式原理与应用实例分析
2020/04/13 Javascript
基于JavaScript实现控制下拉列表
2020/05/08 Javascript
vue v-for 点击当前行,获取当前行数据及event当前事件对象的操作
2020/09/10 Javascript
Python中浅拷贝copy与深拷贝deepcopy的简单理解
2018/10/26 Python
对python以16进制打印字节数组的方法详解
2019/01/24 Python
python全栈要学什么 python全栈学习路线
2019/06/28 Python
Python使用jupyter notebook查看ipynb文件过程解析
2020/06/02 Python
Python 如何实现数据库表结构同步
2020/09/29 Python
工伤事故赔偿协议书
2014/04/15 职场文书
一年级评语大全
2014/04/23 职场文书
法律意见书范文
2015/06/04 职场文书
2016国庆节活动宣传语
2015/11/25 职场文书
幼儿教师三分钟演讲稿
2019/06/21 职场文书
当你找不到方向的时候,不妨读读刘备的一生
2019/08/05 职场文书
Python - 10行代码集2000张美女图
2021/05/23 Python
Java使用JMeter进行高并发测试
2021/11/23 Java/Android
Python+Matplotlib+LaTeX玩转数学公式
2022/02/24 Python