js去除字符串前后空格五种方法示例

发布时间:2020-07-01编辑:脚本学堂
Js去除字符串前后空格的方法,包括循环检查替换空格、正则替换去掉空格、裁剪字符串去除空格等方式,需要的朋友参考下。

第一种:循环检查替换
 

复制代码 代码示例:
//供使用者调用 
function trim(s){ 
return trimRight(trimLeft(s)); 

//去掉左边的空白 
function trimLeft(s){ 
if(s == null) { 
return ""; 

var whitespace = new String(" tnr"); 
var str = new String(s); 
if (whitespace.indexOf(str.charAt(0)) != -1) { 
var j=0, i = str.length; 
while (j < i && whitespace.indexOf(str.charAt(j)) != -1){ 
j++; 

str = str.substring(j, i); 

return str; 

//去掉右边的空白 
function trimRight(s){ 
if(s == null) return ""; 
var whitespace = new String(" tnr"); 
var str = new String(s); 
if (whitespace.indexOf(str.charAt(str.length-1)) != -1){ 
var i = str.length - 1; 
while (i >= 0 && whitespace.indexOf(str.charAt(i)) != -1){ 
i--; 

str = str.substring(0, i+1); 

return str; 
}
 

第二种:正则替换
 

复制代码 代码示例:
<SCRIPT LANGUAGE="javascript"> 
<!-- 
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>
 

第三种:使用jquery
 

复制代码 代码示例:

$.trim(str)

jquery内部实现为:
function trim(str){  
    return str.replace(/^(s|u00A0)+/,'').replace(/(s|u00A0)+$/,'');  
}  

第四种:使用motools
 

复制代码 代码示例:
function trim(str){  
    return str.replace(/^(s|xA0)+|(s|xA0)+$/g, '');  

第五种:裁剪字符串方式
 

复制代码 代码示例:
function trim(str){  
    str = str.replace(/^(s|u00A0)+/,'');  
    for(var i=str.length-1; i>=0; i--){  
        if(/S/.test(str.charAt(i))){  
            str = str.substring(0, i+1);  
            break;  
        }  
    }  
    return str;  

 

经过测试第五种方法在处理长字符串时效率最高。

第五种例子
 

复制代码 代码示例:

<script type="text/javascript">
var str= ' 我你的';

alert(trim(str));

function trim(str){
str = str.replace(/^(s|u00A0)+/,'');
for(var i=str.length-1; i>=0; i--){
if(/S/.test(str.charAt(i))){
str = str.substring(0, i+1);
break;
}
}
return str;
}
</script>