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 相关文章推荐
分享几个超级震憾的图片特效
Jan 08 Javascript
推荐40个简单的 jQuery 导航插件和教程(下篇)
Sep 14 Javascript
JavaScript 对任意元素,自定义右键菜单的实现方法
May 08 Javascript
地址栏传递中文参数乱码在js里用escape转码
Aug 28 Javascript
jQuery获取radio选中项的值实例
Jun 18 Javascript
微信小程序 引用其他js文件实现代码
Feb 22 Javascript
微信小程序 获取javascript 里的数据
Aug 17 Javascript
Javascript中toFixed计算错误(依赖银行家舍入法的缺陷)解决方法
Aug 22 Javascript
微信小程序提交form操作示例
Dec 30 Javascript
vue将后台数据时间戳转换成日期格式
Jul 31 Javascript
Vue中通过vue-router实现命名视图的问题
Apr 23 Javascript
15分钟上手vue3.0(小结)
May 20 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
PHP4(windows版本)中的COM函数
2006/10/09 PHP
phpnow php探针环境检测代码
2014/11/04 PHP
JS支持带x身份证号码验证函数
2008/08/10 Javascript
javascript 跳转代码集合
2009/12/03 Javascript
Ext.MessageBox工具类简介
2009/12/10 Javascript
JavaScript Timer实现代码
2010/02/17 Javascript
javascript textContent与innerText的异同分析
2010/10/22 Javascript
javascript读写XML实现广告轮换(兼容IE、FF)
2013/08/09 Javascript
滚动条响应鼠标滑轮事件实现上下滚动的js代码
2014/06/30 Javascript
jQuery EasyUI中的日期控件DateBox修改方法
2016/11/09 Javascript
前端开发必知的15个jQuery小技巧
2017/01/22 Javascript
Vue仿手机qq的实例代码(demo)
2017/09/08 Javascript
js实现以最简单的方式将数组元素添加到对象中的方法
2017/12/20 Javascript
浅谈ajax请求不同页面的微信JSSDK问题
2018/02/26 Javascript
关于echarts在节点显示动态数据及添加提示文本所遇到的问题
2018/04/20 Javascript
jQuery实现的响应鼠标移动方向插件用法示例【附源码下载】
2018/08/28 jQuery
create-react-app安装出错问题解决方法
2018/09/04 Javascript
微信小程序实现判断是分享到群还是个人功能示例
2019/05/03 Javascript
少女风vue组件库的制作全过程
2019/05/15 Javascript
layui form表单提交之后重新加载数据表格的方法
2019/09/11 Javascript
对python for 文件指定行读写操作详解
2018/12/29 Python
Python mutiprocessing多线程池pool操作示例
2019/01/30 Python
Django处理Ajax发送的Get请求代码详解
2019/07/29 Python
pytorch nn.Conv2d()中的padding以及输出大小方式
2020/01/10 Python
PyCharm中关于安装第三方包的三个建议
2020/09/17 Python
Python基于callable函数检测对象是否可被调用
2020/10/16 Python
NBA欧洲商店(法国):NBA Europe Store FR
2016/10/19 全球购物
eDreams澳大利亚:预订机票、酒店和度假产品
2017/04/19 全球购物
荷兰演唱会和体育比赛订票网站:viagogo荷兰
2018/04/08 全球购物
英国汽车零件购物网站:GSF Car Parts
2019/05/23 全球购物
校运动会广播稿(100篇)
2014/09/12 职场文书
顶岗实习计划书
2015/01/16 职场文书
小学六一儿童节活动总结
2015/05/05 职场文书
论文答辩开场白大全
2015/05/27 职场文书
诺贝尔奖获得者名言100句:句句启人心智,值永久收藏
2019/08/09 职场文书
实战Python爬虫爬取酷我音乐
2022/04/11 Python