您的位置:首页 > 其它

去除字符串首尾的空格

2016-03-02 01:46 381 查看
  使用正则去除字符串首尾的空格。

  分享三个去除字符串首尾空格的方法。

  第一种,只调用一次replace方法

function trim(str){
return (str || "").replace(/^\s+|\s+$/g,"");
}
assert(trim(" #id div.class ") == "#id div.class", "Extra whitespace trimmed from a selector string");


  第二种,先替换开头的空格,再替换结尾的空格

function trim(str){
return str.replace(/^\s\s*/,'').replace(/\s\s*$/, '');
}


  第三种,使用slice剔除尾部的空格

function trim(str){
var str = str.replace(/^\s\s*/, ''),
ws = /\s/,
i = str.length;
console.log(ws.test(str.charAt(--i)));
while (ws.test(str.charAt(--i)));
return str.slice(0, i + 1);
}


  在大多数JavaScript库中使用了第一种解决方案。但是在处理文档的时候,第三种解决方案的性能更好。在匹配短字符串的情况下,方法1和方法2效率更高。

  方法一中的 assert函数是一个简单的单元测试,代码如下

function assert(value, desc){
var li = document.createElement("li");
li.className = value ? "pass" : "fail";
li.appendChild(document.createTextNode(desc));
//console.log(document.getElementById("results"))
document.getElementById("results").appendChild(li);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: