一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

JS 去空格trim()最佳实践

时间:2013-03-22 编辑:简简单单 来源:一聚教程网

方案如下:

 代码如下 复制代码

if(!String.prototype.trim){
    String.prototype.trim = function(){
        return this.replace(/^s+|s+$/g, '');
    }
}

上面代码测试性能上15S,后来国外网站找到了优化方法

 代码如下 复制代码

function trim10 (str) {
 var whitespace = ' nrtfx0bxa0u2000u2001u2002u2003u2004u2005u2006u2007u2008u2009u200au200bu2028u2029u3000';
 for (var i = 0; i < str.length; i++) {
  if (whitespace.indexOf(str.charAt(i)) === -1) {
   str = str.substring(i);
   break;
  }
 }
 for (i = str.length - 1; i >= 0; i--) {
  if (whitespace.indexOf(str.charAt(i)) === -1) {
   str = str.substring(0, i + 1);
   break;
  }
 }
 return whitespace.indexOf(str.charAt(0)) === -1 ? str : '';
}

相对起来下面更好

 代码如下 复制代码

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

热门栏目