JavaScript自定义方法实现trim()、Ltrim()、Rtrim()的功能


Posted in Javascript onNovember 03, 2013

去除字符串两端的空格,是字符串处理非常常用的方法,非常遗憾的是JavaScript没有这三个方法,只有我们自定义了:
第1步,给String添加成员

String.prototype.Trim = function(){ return Trim(this);} 
String.prototype.LTrim = function(){return LTrim(this);} 
String.prototype.RTrim = function(){return RTrim(this);}

第二步,实现方法
function LTrim(str) 
{ 
var i; 
for(i=0;i<str.length;i++) 
{ 
if(str.charAt(i)!=" "&&str.charAt(i)!=" ")break; 
} 
str=str.substring(i,str.length); 
return str; 
} 
function RTrim(str) 
{ 
var i; 
for(i=str.length-1;i>=0;i--) 
{ 
if(str.charAt(i)!=" "&&str.charAt(i)!=" ")break; 
} 
str=str.substring(0,i+1); 
return str; 
} 
function Trim(str) 
{ 
return LTrim(RTrim(str)); 
}

当然,也可应使用正则表达式,这样代码更清晰,效率也更高,
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, ""); 
}
Javascript 相关文章推荐
javascript打开新窗口同时关闭旧窗口
Jan 16 Javascript
js随机颜色代码的多种实现方式
Apr 23 Javascript
jquery和雅虎的yql服务实现天气预报服务示例
Feb 08 Javascript
js数值和和字符串进行转换时可以对不同进制进行操作
Mar 05 Javascript
运行Node.js的IIS扩展iisnode安装配置笔记
Mar 02 Javascript
Bootstrap每天必学之折叠(Collapse)插件
Apr 25 Javascript
原生js实现手风琴功能(支持横纵向调用)
Jan 13 Javascript
Angular利用内容投射向组件输入ngForOf模板的方法
Mar 05 Javascript
微信小程序实现折叠与展开文章功能
Jun 12 Javascript
layui添加动态菜单与选项卡
Jul 26 Javascript
JavaScript使用表单元素验证表单的示例代码
Aug 20 Javascript
使用React代码动态生成栅格布局的方法
May 24 Javascript
JavaScript中使用Substring删除字符串最后一个字符
Nov 03 #Javascript
div模拟选择框示例代码
Nov 03 #Javascript
html文件中jquery与velocity变量中的$冲突的解决方法
Nov 01 #Javascript
Javascript中string转date示例代码
Nov 01 #Javascript
文档对象模型DOM通俗讲解
Nov 01 #Javascript
原生js ActiveXObject获取execl里面的值
Nov 01 #Javascript
框架页面高度自动刷新的Javascript脚本
Nov 01 #Javascript
You might like
解析如何通过PHP函数获取当前运行的环境 来进行判断执行逻辑(小技巧)
2013/06/25 PHP
2014过年倒计时示例
2014/01/31 PHP
php中mail函数发送邮件失败的解决方法
2014/12/24 PHP
PHP实现WebService的简单示例和实现步骤
2015/03/27 PHP
PHP使用Nginx实现反向代理
2017/09/20 PHP
PHP设计模式之建造者模式定义与用法简单示例
2018/08/13 PHP
PHP实现将上传图片自动缩放到指定分辨率,并保持清晰度封装类示例
2019/06/17 PHP
CL vs ForZe BO5 第四场 2.13
2021/03/10 DOTA
javascript 写类方式之二
2009/07/05 Javascript
jQuery 开天辟地入门篇一
2009/12/09 Javascript
输入框的字数时时统计—关于 onpropertychange 和 oninput 使用
2011/10/21 Javascript
整理8个很棒的 jQuery 倒计时插件和教程
2011/12/12 Javascript
JS函数的定义与调用方法推荐
2016/05/12 Javascript
javascript数组对象常用api函数小结(连接,插入,删除,反转,排序等)
2016/09/20 Javascript
通过button将form表单的数据提交到action层的实例
2017/09/08 Javascript
react-native 圆弧拖动进度条实现的示例代码
2018/04/12 Javascript
写gulp遇到的ES6问题详解
2018/12/03 Javascript
jQuery实现判断滚动条滚动到document底部的方法分析
2019/08/27 jQuery
vue-loader中引入模板预处理器的实现
2019/09/04 Javascript
微信小程序自定义tabbar custom-tab-bar 6s出不来解决方案(cover-view不兼容)
2019/11/01 Javascript
Vue+Node服务器查询Mongo数据库及页面数据传递操作实例分析
2019/12/20 Javascript
vue cli4.0项目引入typescript的方法
2020/07/17 Javascript
[53:15]Newbee vs Pain 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
[34:41]夜魇凡尔赛茶话会 第二期02:你画我猜
2021/03/11 DOTA
python使用pyhook监控键盘并实现切换歌曲的功能
2014/07/18 Python
Python中Threading用法详解
2017/12/27 Python
Django DRF路由与扩展功能的实现
2020/06/03 Python
python对批量WAV音频进行等长分割的方法实现
2020/09/25 Python
如何在网站上添加谷歌定位信息
2016/04/16 HTML / CSS
HTML5 虚拟键盘出现挡住输入框的解决办法
2017/02/14 HTML / CSS
《秋姑娘的信》教学反思
2014/02/28 职场文书
2014年寒假社会实践活动心得体会
2014/04/07 职场文书
消防安全责任书
2014/04/14 职场文书
青奥会口号
2014/06/12 职场文书
在职党员进社区活动总结
2014/07/05 职场文书
个人批评与自我批评范文
2014/10/17 职场文书