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 相关文章推荐
在JavaScript中实现命名空间
Nov 23 Javascript
jquery 圆形旋转图片滚动切换效果
Jan 19 Javascript
jquery随机展示头像代码
Dec 21 Javascript
js检查页面上有无重复id的实现代码
Jul 17 Javascript
javascript实用小函数使用介绍
Nov 11 Javascript
JavaScript改变CSS样式的方法汇总
May 07 Javascript
jquery-tips悬浮提示插件分享
Jul 31 Javascript
基于jQuery ligerUI实现分页样式
Sep 18 Javascript
深入理解vue中的$set
Jun 01 Javascript
node使用Koa2搭建web项目的方法
Oct 17 Javascript
Angular2进阶之如何避免Dom误区
Apr 02 Javascript
Vue在页面右上角实现可悬浮/隐藏的系统菜单
May 04 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+mysql保存和输出文件
2006/10/09 PHP
php截取字符串之截取utf8或gbk编码的中英文字符串示例
2014/03/12 PHP
php使用GD实现颜色渐变实例
2015/06/02 PHP
Zend Framework连接Mysql数据库实例分析
2016/03/19 PHP
PHP的时间戳与具体时间转化的简单实现
2016/06/13 PHP
php版微信发红包接口用法示例
2016/09/23 PHP
PHP实现的只保留字符串首尾字符功能示例【隐藏部分字符串】
2019/03/11 PHP
php进行md5加密简单实例方法
2019/09/19 PHP
JS小框架 fly javascript framework
2009/11/26 Javascript
javascript中RegExp保留小数点后几位数的方法分享
2013/08/13 Javascript
详解JavaScript异步编程中jQuery的promise对象的作用
2016/05/03 Javascript
使用HTML5+Boostrap打造简单的音乐播放器
2016/08/05 Javascript
利用select实现年月日三级联动的日期选择效果【推荐】
2016/12/13 Javascript
简单实现js鼠标跟随效果
2020/08/02 Javascript
JavaScript同源策略和跨域访问实例详解
2018/04/03 Javascript
python字符串string的内置方法实例详解
2018/05/14 Python
如何在Cloud Studio上执行Python代码?
2019/08/09 Python
Python统计时间内的并发数代码实例
2019/12/28 Python
自定义Django_rest_framework_jwt登陆错误返回的解决
2020/10/18 Python
Python中Qslider控件实操详解
2021/02/20 Python
HTML5的download属性详细介绍和使用实例
2014/04/23 HTML / CSS
英国最大的在线快递公司之一:ParcelHero
2019/11/04 全球购物
国外软件测试工程师面试题
2016/12/09 面试题
即将毕业大学生自荐信
2014/01/24 职场文书
餐厅考勤管理制度
2014/01/28 职场文书
《小儿垂钓》教学反思
2014/02/23 职场文书
《美丽的田园》教学反思
2014/03/01 职场文书
关于梦想的演讲稿
2014/05/05 职场文书
邻里守望志愿服务活动方案
2014/08/15 职场文书
2014公安机关纪律作风整顿思想汇报
2014/09/13 职场文书
群众路线问题查摆对照检查材料
2014/10/04 职场文书
中学生思想品德评语
2014/12/31 职场文书
2015年信访维稳工作总结
2015/04/07 职场文书
Lombok的详细使用及优缺点总结
2021/07/15 Java/Android
python Tkinter模块使用方法详解
2022/04/07 Python
Python OpenGL基本配置方式
2022/05/20 Python