部分IE下使用trim()函数出错解决方法

因为在获取输入框内容时,常常需要trim下多余的空格。而IE部分低端浏览器里的JavaScript版本不内置trim()这个清楚空格函数,而流行的浏览器里都兼容了,比如Chrome,FF等。为了不让IE下报错影响使用,我们可以自己动手丰衣足食,在IE下给String原型添加一个trim自定义函数,让IE下的String类型支持trim()清除首尾空格。

把以下代码贴在最开始部分就好,当然清除空格的写法多种多样,以下效率没测试过,但基本够用,实在看重效率可以自己研究下正则,替换成你的写法就好!

// 解决IE下string类型没有trim函数bug
String.prototype.trim = function () {
  return this.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
};

讲究的朋友,可以直接判断下有没有trim函数,这样就可以在支持trim函数的浏览器里不会被自定义的破坏而又可以在不支持trim函数的浏览器里能用上自定义的函数从而避免报错

if (typeof String.prototype.trim === 'undefined') {
  String.prototype.trim = function () {
    return this.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
  };
}
分享

TITLE: 部分IE下使用trim()函数出错解决方法

LINK: https://www.qttc.net/271-ie-trim.html

NOTE: 原创内容,转载请注明出自琼台博客