• js去掉字符串前后空格的五种方法


    第一种:循环检查替换
    [javascript]
    //供使用者调用  
    function trim(s){  
    return trimRight(trimLeft(s));  
    }  
    //去掉左边的空白  
    function trimLeft(s){  
    if(s == null) {  
    return "";  
    }  
    var whitespace = new String(" ");  
    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;  
    }  
    //去掉右边的空白 www.2cto.com   
    function trimRight(s){  
    if(s == null) return "";  
    var whitespace = new String(" ");  
    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;  

    第二种:正则替换
    [javascript]
    <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
    [javascript]
    $.trim(str) 
    jquery内部实现为:
    [javascript]
    function trim(str){   
        return str.replace(/^(s|u00A0)+/,'').replace(/(s|u00A0)+$/,'');   
    }   
    第四种:使用motools
    [javascript]
    function trim(str){   
        return str.replace(/^(s|xA0)+|(s|xA0)+$/g, '');   
    }  
    第五种:裁剪字符串方式
    [javascript]
    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;   
    }  
    经过测试第五种方法在处理长字符串时效率最高。

  • 相关阅读:
    Swift_数据存储
    Swift_零碎知识
    Flutter安装与使用
    供热
    iOS_2022_动画
    依赖管理
    Swift_协议
    Swift_网络请求
    数据转换的使用
    Map相关、MapUtils、MultiMap、LazyMap、BidiMap
  • 原文地址:https://www.cnblogs.com/xiaochao12345/p/4095435.html
Copyright © 2020-2023  润新知