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 UI的Dialog无法提交问题的解决方法
Jan 11 Javascript
js实现图片轮换效果代码
Apr 16 Javascript
JavaScript开发者必备的10个Sublime Text插件
Feb 27 Javascript
基于jquery实现图片放大功能
May 07 Javascript
JavaScript原生节点操作小结
Jan 17 Javascript
如何获取元素的最终background-color
Feb 06 Javascript
深入理解Angular4中的依赖注入
Jun 07 Javascript
详解js静态资源文件请求的处理
Aug 01 Javascript
JS 中可以提升幸福度的小技巧(可以识别更多另类写法)
Jul 28 Javascript
利用百度echarts实现图表功能简单入门示例【附源码下载】
Jun 10 Javascript
JQuery中DOM节点的操作与访问方法实例分析
Dec 23 jQuery
vue+element实现动态加载表单
Dec 13 Vue.js
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导入导出excel实例
2013/10/25 PHP
PHP获取数组中重复最多的元素的实现方法
2014/11/11 PHP
PHP使用Mysqli类库实现完美分页效果的方法
2016/04/07 PHP
php输出图像的方法实例分析
2017/02/16 PHP
php数值转换时间及时间转换数值用法示例
2017/05/18 PHP
PHP使用curl_multi_select解决curl_multi网页假死问题的方法
2018/08/15 PHP
浅谈Laravel核心解读之Console内核
2018/12/02 PHP
使用prototype.js进行异步操作
2007/02/07 Javascript
IE 下的只读 innerHTML
2009/08/21 Javascript
Ubuntu 11.10 安装Node.js的方法
2011/11/30 Javascript
jQuery aminate方法定位到页面具体位置
2013/12/26 Javascript
JavaScript中使用ActiveXObject操作本地文件夹的方法
2014/03/28 Javascript
jQuery实现tab标签自动切换的方法
2015/02/28 Javascript
js实现二级菜单点击显示当前内容效果
2018/04/28 Javascript
Vue 事件处理操作实例详解
2019/03/05 Javascript
vue+webpack dev本地调试全局样式引用失效的解决方案
2019/11/12 Javascript
Vue+elementUI实现多图片上传与回显功能(含回显后继续上传或删除)
2020/03/23 Javascript
python单链表实现代码实例
2013/11/21 Python
python改变日志(logging)存放位置的示例
2014/03/27 Python
Python中动态获取对象的属性和方法的教程
2015/04/09 Python
Python实现SMTP发送邮件详细教程
2021/03/02 Python
python的依赖管理的实现
2019/05/14 Python
Python 获取 datax 执行结果保存到数据库的方法
2019/07/11 Python
在django中图片上传的格式校验及大小方法
2019/07/28 Python
Python 实现国产SM3加密算法的示例代码
2020/09/21 Python
最新版 Windows10上安装Python 3.8.5的步骤详解
2020/11/28 Python
如何用Java实现列出某个目录下的所有子目录
2015/07/20 面试题
销售辞职报告范文
2014/01/12 职场文书
股权转让意向书
2014/04/01 职场文书
《祁黄羊》教学反思
2014/04/22 职场文书
员工培训协议书
2014/09/15 职场文书
三八妇女节寄语
2015/02/27 职场文书
人事行政助理岗位职责
2015/04/11 职场文书
Python-typing: 类型标注与支持 Any类型详解
2021/05/10 Python
MyBatis XPathParser解析器使用范例详解
2022/07/15 Java/Android
python 镜像环境搭建总结
2022/09/23 Python