JavaScript trim 去除字符串空格的三种方法(附代码详解)

方法一: 正则替换 推荐
个人认为最好的方法.采用的是正则表达式,这是最核心的原理.
下面是代码原文


代码如下:

<SCRIPT LANGUAGE="JavaScript">
<!--
//出处:网上搜集
//For more visit http://www.jb51.net
// 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 的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 属性。可以象该例中那样为原型添加功能,但该对象不能被赋予不同的原型。然而,用户定义的对象可以被赋给新的原型。
本语言参考中每个内部对象的方法和属性列表指出哪些是对象原型的部分,哪些不是。
方法二:
由于使用方法简单,所以这里就不举例子了.


代码如下:

//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));
}

方法三:
这个方法将函数写在一起,通过传递参数不同而达到不同的实现效果

JavaScript Trim Function

JavaScript中的字符串去除空格函数(自定义):

")
document.write("R1 = '" + sR1 + "'
")
document.write("R2 = '" + sR2 + "'
")
//-->

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

(0)

相关推荐

  • js去空格技巧分别去字符串前后、左右空格

    分别去字符串前后,左边,右边空格 复制代码 代码如下: 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+$/

  • js去字符串前后空格的实现方法

    当我们进行一些页面编辑时,字符串前后的空格,通常是无效的.因此需要在获取信息时,进行过滤. 比如: 输入:[空格][空格]a[空格]b[空格][空格][空格] 得到:a[空格]b 代码如下: 去掉前面的空格 function LTrim(str){ var i; for(i=0;i<str.length;i++){ if(str.charAt(i)!=" ") break; } str = str.substring(i,str.length); return str; } 去掉

  • Js 去掉字符串中的空格(实现代码)

    1. 去掉字符串两端的空格 String.prototype.trim=function (){return this.replace(/(^/s*)|(/s*$)/g,'');} 2. 去掉字符串中所有的空格: String.prototype.sTrim = function (){return this.replace(//s/g, '');} 或者: var s = "asd ddd bbb sss";var reg = //s/g;var ss = s.replace(reg

  • JS去掉字符串前后空格或去掉所有空格的用法

    1.  去掉字符串前后所有空格: 代码如下: function Trim(str) { return str.replace(/(^\s*)|(\s*$)/g, ""); } 说明: 如果使用jQuery直接使用$.trim(str)方法即可,str表示要去掉前后所有空格的字符串.  2. 去掉字符串中所有空格(包括中间空格,需要设置第2个参数为:g) 代码如下: function Trim(str,is_global) { var result; result = str.repla

  • js去字符串前后空格5种实现方法及比较

    我们在项目中如果写到注册的时候,用户输入空格,我们怎么来剔除空格呢? 下面是我经常用到的js与大家分享下: 第一种:循环检查替换 [javascript] 复制代码 代码如下: //供使用者调用 function trim(s){ return trimRight(trimLeft(s)); } //去掉左边的空白 function trimLeft(s){ if(s == null) { return ""; } var whitespace = new String("

  • js 去掉字符串前后空格实现代码集合

    第一种:循环检查替换 //供使用者调用 function trim(s){ return trimRight(trimLeft(s)); } //去掉左边的空白 function trimLeft(s){ if(s == null) { return ""; } var whitespace = new String(" \t\n\r"); var str = new String(s); if (whitespace.indexOf(str.charAt(0))

  • JS去除字符串两端空格的简单实例

    //去左空格;function ltrim(s){ return s.replace(/(^s*)/g, "");}//去右空格;function rtrim(s){return s.replace(/(s*$)/g, "");}//去左右空格;function trim(s){return s.replace(/(^s*)|(s*$)/g, "");}

  • JS去除字符串中空格的方法

    本文实例讲述了JS去除字符串中空格的方法.分享给大家供大家参考,具体如下: 去掉字符串中的所有空格,不仅仅包含前后空格: text = text.replace(/\s/ig,''); 去掉前后空格: 第一种方法: 使用trim() function Trim(m){ while((m.length>0)&&(m.charAt(0)==' ')) m = m.substring(1, m.length); while((m.length>0)&&(m.charA

  • javascript去除字符串左右两端的空格

    去除字符串左右两端的空格,在vbscript里面可以轻松地使用 trim.ltrim 或 rtrim,但在js中却没有这3个内置方法,需要手工编写.下面的实现方法是用到了正则表达式,效率不错,并把这三个方法加入String对象的内置方法中去. 写成类的方法格式如下:(str.trim();) 复制代码 代码如下: <script language="javascript"> String.prototype.trim=function(){    return this.r

  • JS去除字符串的空格增强版(可以去除中间的空格)

    javascript trim 去空格函数实现代码http://www.jb51.net/article/16250.htm 下面是增强版本 复制代码 代码如下: // 功能: 1)去除字符串前后所有空格 // 2)去除字符串中所有空格(包括中间空格,需要设置第2个参数为:g) function Trim(str,is_global) { var result; result = str.replace(/(^\s+)|(\s+$)/g,""); if(is_global.toLowe

  • javascript 去字符串空格终极版(支持utf8)

    其实这个问题是:如果你的js本身是unicode编码,那么用正则表达式\s就可以去掉所有空白,但是如果你js是utf-8编码,那么正则就不能处理编码为160的空格了. 下面我先是正则表达式去掉编码为32的空格,再用递归的方法去掉字符串两边的unicode空格. 复制代码 代码如下: /** 去字符两端空格 开始 *@author 敖士伟 *@version v1.0 *@date 2009/11/14 22:51 */ String.prototype.trim = function() { v

  • JS使用正则实现去掉字符串左右空格的方法

    本文实例讲述了JS使用正则实现去掉字符串左右空格的方法.分享给大家供大家参考,具体如下: //去掉左空格 function ltrim(s) { return s.replace(/^/s*/, ""); } //去掉右空格 function rtrim(s) { return s.replace(//s*$/, ""); } //去掉左右空格 function trim(s) { return rtrim(ltrim(s)); } PS:这里再为大家提供2款非常方

  • 如何用javascript去掉字符串里的所有空格

    这个好像只能去掉2头的空格 复制代码 代码如下: String.prototype.trim=function   (){return   this.replace(/(^\s*)|(\s*$)/g,'');} 方法1: 复制代码 代码如下: String.prototype.mm   =   function   (){return   this.replace(/\s/g,   '');} 方法2: 复制代码 代码如下: var   s   =   "asd   ddd   bbb   ss

随机推荐