JavaScript去除空格的三种方法(正则/传参函数/trim)


Posted in Javascript onFebruary 06, 2013

方法一:
个人认为最好的方法.采用的是正则表达式,这是最核心的原理.
其次.这个方法使用了JavaScript 的prototype 属性
其实你不使用这个属性一样可以用函数实现.但这样做后用起来比较方便.
下面就来看看这个属性是怎么来用的.

返回对象类型原型的引用。
objectName.prototype
objectName 参数是对象的名称。
说明
用 prototype 属性提供对象的类的一组基本功能。对象的新实例“继承”赋予该对象原型的操作。

例如,要为 Array 对象添加返回数组中最大元素值的方法。要完成这一点,声明该函数,将它加入 Array.prototype,并使用它。

function array_max( ){ 
var i, max = this[0]; 
for (i = 1; i < this.length; i++) 
{ 
if (max < this[i]) 
max = this[i]; 
} 
return max; 
} 
Array.prototype.max = array_max; 
var x = new Array(1, 2, 3, 4, 5, 6); 
var y = x.max( );

该代码执行后,y 保存数组 x 中的最大值,或说 6。
所有 JScript 内部对象都有只读的 prototype 属性。可以象该例中那样为原型添加功能,但该对象不能被赋予不同的原型。然而,用户定义的对象可以被赋给新的原型。

本语言参考中每个内部对象的方法和属性列表指出哪些是对象原型的部分,哪些不是。
下面是代码原文
程序代码

<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
//出处:网上搜集 
//made by yaosansi 2005-12-02 
//For more visit http://www.yaosansi.com 
// Trim() , Ltrim() , RTrim() 
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>

下面来我们来看看Js脚本中"/s表示什么"
\s 匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]。
请紧记是小写的s
方法二:
由于使用方法简单,所以这里就不举例子了.
//javascript去空格函数 
function LTrim(str){ //去掉字符串 的头空格 
var i; 
for(i=0;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)); 
}

方法三:
这个方法将函数写在一起,通过传递参数不同而达到不同的实现效果
<HTML> 
<HEAD> 
<TITLE>JavaScript Trim Function</TITLE> 
<SCRIPT LANGUAGE=javascript> 
<!-- 
//**************************************************************** 
// Description: sInputString 为输入字符串,iType为类型,分别为 
// 0 - 去除前后空格; 1 - 去前导空格; 2 - 去尾部空格 
//**************************************************************** 
function cTrim(sInputString,iType) 
{ 
var sTmpStr = ' ' 
var i = -1 if(iType == 0 || iType == 1) 
{ 
while(sTmpStr == ' ') 
{ 
++i 
sTmpStr = sInputString.substr(i,1) 
} 
sInputString = sInputString.substring(i) 
} 
if(iType == 0 || iType == 2) 
{ 
sTmpStr = ' ' 
i = sInputString.length 
while(sTmpStr == ' ') 
{ 
--i 
sTmpStr = sInputString.substr(i,1) 
} 
sInputString = sInputString.substring(0,i+1) 
} 
return sInputString 
} 
//--> 
</SCRIPT> 
</HEAD> 
<BODY> 
JavaScript中的字符串去除空格函数(自定义):<br> 
<SCRIPT LANGUAGE=javascript> 
<!-- 
var sR0 = cTrim(" T e s t ",0) 
var sR1 = cTrim(" T e s t ",1) 
var sR2 = cTrim(" T e s t ",2) 
document.write("R0 = '" + sR0 + "'<br>") 
document.write("R1 = '" + sR1 + "'<br>") 
document.write("R2 = '" + sR2 + "'<br>") 
//--> 
</SCRIPT> 
</BODY> 
</HTML>
Javascript 相关文章推荐
jQuery 版本的文本输入框检查器Input Check
Jul 09 Javascript
javascript firefox 自动加载iframe 自动调整高宽示例
Aug 27 Javascript
node.js读取文件到字符串的方法
Jun 29 Javascript
window.onload使用指南
Sep 13 Javascript
JavaScript ParseFloat()方法
Dec 18 Javascript
JavaScript  event对象整理及详细介绍
Oct 10 Javascript
javascript 中的继承实例详解
May 05 Javascript
AngularJs+Bootstrap实现漂亮的计算器
Aug 10 Javascript
JavaScript模块模式实例详解
Oct 25 Javascript
原生js检测页面加载完毕的实例
Sep 11 Javascript
JS快速实现简单计算器
Apr 08 Javascript
JavaScript实现班级抽签小程序
May 19 Javascript
js中top/parent/frame概述及案例应用
Feb 06 #Javascript
ExtJS4 Grid改变单元格背景颜色及Column render学习
Feb 06 #Javascript
jquery load事件(callback/data)使用方法及注意事项
Feb 06 #Javascript
JQuery slideshow的一个小问题(如何发现及解决过程)
Feb 06 #Javascript
jquery入门——事件机制之事件中的冒泡现象示例解释
Sep 12 #Javascript
JQuery入门——用bind方法绑定事件处理函数应用介绍
Feb 05 #Javascript
JQuery入门——用映射方式绑定不同事件应用示例
Feb 05 #Javascript
You might like
简单的PHP缓存设计实现代码
2011/09/30 PHP
php提交过来的数据生成为txt文件
2016/04/28 PHP
根据key删除数组中指定的元素实现方法
2017/03/02 PHP
JavaScript 页面坐标相关知识整理
2010/01/09 Javascript
jquery下checked取值问题的解决方法
2012/08/09 Javascript
JS创建类和对象的两种不同方式
2014/08/08 Javascript
js对字符的验证方法汇总
2015/02/04 Javascript
javascript使用avalon绑定实现checkbox全选
2015/05/06 Javascript
Node.js程序中的本地文件操作用法小结
2016/03/06 Javascript
JavaScript中setter和getter方法介绍
2016/07/11 Javascript
详解JavaScript节流函数中的Throttle
2016/07/16 Javascript
jquery使用EasyUI Tree异步加载JSON数据(生成树)
2017/02/11 Javascript
JS+HTML+CSS实现轮播效果
2017/11/28 Javascript
vue.js编译时给生成的文件增加版本号
2018/09/17 Javascript
原生JS实现的自动轮播图功能详解
2018/12/28 Javascript
使用mixins实现elementUI表单全局验证的解决方法
2019/04/02 Javascript
Webpack的Loader和Plugin的区别
2020/11/09 Javascript
[01:06:12]VP vs NIP 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
python基于itchat实现微信群消息同步机器人
2017/02/27 Python
简单了解OpenCV是个什么东西
2017/11/10 Python
Python/ArcPy遍历指定目录中的MDB文件方法
2018/10/27 Python
详解python中的Turtle函数库
2018/11/19 Python
用python打印1~20的整数实例讲解
2019/07/01 Python
python实现银行管理系统
2019/10/25 Python
numpy ndarray 取出满足特定条件的某些行实例
2019/12/05 Python
Python tkinter 下拉日历控件代码
2020/03/04 Python
完美解决IE8下不兼容rgba()的问题
2017/03/31 HTML / CSS
英国巧克力贸易公司:Chocolate Trading Company
2017/03/21 全球购物
美国特价机票专家:Airfarewatchdog
2018/01/24 全球购物
文科教师毕业的自我评价
2014/01/16 职场文书
2014年生产部工作总结
2014/12/17 职场文书
工人先进事迹材料
2014/12/26 职场文书
班级元旦晚会开幕词
2015/01/29 职场文书
2015小学教育教学工作总结
2015/07/21 职场文书
node快速搭建后台的实现步骤
2022/02/18 NodeJs
PyTorch中的torch.cat简单介绍
2022/03/17 Python