jQuery的trim()方法用来去除字符串两端的空格。
jQuery的trim()源码如下:
core_version = "1.9.0",
core_trim = core_version.trim,
rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,
trim: core_trim && !core_trim.call("\uFEFF\xA0") ?
function( text ) {
return text == null ? "" : core_trim.call( text );
}
:
function( text ) {
return text == null ? "" : ( text + "" ).replace( rtrim, "" );
},
解析:首先尝试使用字符串原生的trim方法(非IE支持),若不支持,使用String.prototype.trim.call("\uFEFF\xA0"),若上述两个方法都不支持,使用自定义的正则replace()方法,清空两边的空格或特殊字符。
\uFEFF:某些软件,在保存一个以UTF-8编码的文件时,会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM),转码后是\uFEFF,因此在读取时需要自己去掉这些字符。
\xA0:HTML中常见的 。