String.prototype.trim()

trim() 方法会从一个字符串的两端删除空白字符。在这个上下文中的空白字符是所有的空白字符 (space, tab, no-break space 等) 以及所有行终止符字符(如 LF,CR等)。

语法

str.trim()

返回值

一个代表调用字符串两端去掉空白的新字符串。

描述

trim() 方法返回一个从两头去掉空白字符的字符串,并不影响原字符串本身。

例子

使用 trim()

下面的例子中将显示小写的字符串 'foo':

var orig = '   foo  ';
console.log(orig.trim()); // 'foo'

// 另一个 .trim() 例子,只从一边删除

var orig = 'foo    ';
console.log(orig.trim()); // 'foo'

兼容旧环境

如果 trim() 不存在,可以在所有代码前执行下面代码

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

规范

规范 状态 备注
ECMAScript 5.1 (ECMA-262)
String.prototype.trim
Standard Initial definition. Implemented in JavaScript 1.8.1.
ECMAScript 2015 (6th Edition, ECMA-262)
String.prototype.trim
Standard
ECMAScript Latest Draft (ECMA-262)
String.prototype.trim
Draft

浏览器兼容性

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung InternetNode.js
trimChrome Full support 4Edge Full support 12Firefox Full support 3.5IE Full support 9Opera Full support 10.5Safari Full support 5WebView Android Full support ≤37Chrome Android Full support 18Firefox Android Full support 4Opera Android Full support 11Safari iOS Full support YesSamsung Internet Android Full support 1.0nodejs Full support Yes

Legend

Full support  
Full support

参见