关于ie9以下不支持trim()方法
可以在自己封装的框架中加入如下。或直接调用也行。
if(!String.prototype.trim) {
String.prototype.trim = function() {
return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ”);
//\uFEFF为es5新增的空白符,\XA0是不间断空白符
};
}
可以在jquery框架中找到
// Support: Android<4.1, IE<9
// Make sure we trim BOM and NBSP
rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,
/如果原型没有trim方法。这里一般为ie9以下 ,则添加trim()方法。
下面这句话主要难点在于 /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g
\uFEFF(Unicode 编码:U+FEFF )。是 ES5 新增的空白符 也叫「字节次序标记字符(Byte Order Mark)」,也就是 BOM
\xA0 为不间断空白符