使用ie11未定义“ XRegExp”

时间:2018-10-22 15:03:56

标签: javascript internet-explorer-11 xregexp

我正在使用XRegExp检查Unicode正则表达式。在我测试过的任何浏览器中(除了IE11),它都可以正常工作。

在我的脚本中,我定义了要检查的正则表达式:

var unicodeWord = XRegExp("^[\\p{L}']...+$");

在ie11中,出现以下错误:

  

SCRIPT5009:“符号”未定义
  xregexp.all.js(1730,11)
  SCRIPT5009:“ XregExp”未定义
  jquery-3.3.1.slim.min.js(2,31232)

如何在ie11中解决此问题?我已经检查过,并且ie11没有以兼容模式运行。同样,我已经阅读了xregexp.com上的文档,但看不到任何解决此问题的方法。

如果能找到解决方案的指南,我将不胜感激,并且有可能解释ie11为何如此。

1 个答案:

答案 0 :(得分:2)

有关Symbol的错误是因为最新版本的XRegExp使用了Symbol,而IE11中未定义。有人提出了一个issue。您的选择是:

  1. 还原为不使用Symbol的XRegExp较旧版本。

  2. 在加载XRegExp之前为Symbol安装一个polyfill,以便出现Symbol

  3. 等待使用Polyfill编译的较新版本的XRegExp。修复程序has been merged,但尚未发布具有此修复程序的版本。

关于XregExp的错误对我来说似乎是一个错字。名称是XRegExp,而不是XregExp