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