在JavaScript中修剪字符串?
如何修剪JavaScript中的字符串?
自IE9 +以来的所有浏览器都有trim()
。
对于那些不支持trim()
浏览器,您可以使用MDN中的这个polyfill:
if (!String.prototype.trim) {
(function() {
// Make sure we trim BOM and NBSP
var rtrim = /^[suFEFFxA0]+|[suFEFFxA0]+$/g;
String.prototype.trim = function() {
return this.replace(rtrim, '');
};
})();
}
看到这个:
String.prototype.trim=function(){return this.replace(/^s+|s+$/g, '');};
String.prototype.ltrim=function(){return this.replace(/^s+/,'');};
String.prototype.rtrim=function(){return this.replace(/s+$/,'');};
String.prototype.fulltrim=function(){return this.replace(/(?:(?:^|n)s+|s+(?:$|n))/g,'').replace(/s+/g,' ');};
如果您已经在使用该框架,那么jQuery的修剪很方便。
$.trim(' your string ');
我倾向于经常使用jQuery,因此修剪字符串对我来说很自然。 但是有可能是在那里反对jQuery? :)
虽然上面有很多正确的答案,但应该注意的是,JavaScript中的String
对象具有ECMAScript 5 .trim()
的原生.trim()
方法。因此,理想情况下,任何试图对trim方法进行原型化的尝试都应该确实检查它是否已经存在首先存在。
if(!String.prototype.trim){
String.prototype.trim = function(){
return this.replace(/^s+|s+$/g,'');
};
}
本地添加: JavaScript 1.8.1 / ECMAScript 5
因此得到以下支持
Firefox: 3.5+
Safari: 5+
Internet Explorer: IE9 + (仅限标准模式!)http://blogs.msdn.com/b/ie/archive/2010/06/25/enhanced-scripting-in-ie9-ecmascript-5-support-and-more的.aspx
Chrome: 5+
Opera: 10.5+
ECMAScript 5支持表:http://kangax.github.com/es5-compat-table/
链接地址: http://www.djcxy.com/p/26769.html