shCore.js?v=20161021:94 Uncaught TypeError: RegExp exec method returned something other than an Object or null
at RegExp.[Symbol.replace] (native)
at String.replace (native)
at new XRegExp (http://www.rpgmaker.cc/res/js/dev/windeditor/plugins/insertCode/syntaxHihglighter/scripts/shCore.js?v=20161021:94:54)
at parseParams (http://www.rpgmaker.cc/res/js/dev/windeditor/plugins/insertCode/syntaxHihglighter/scripts/shCore.js?v=20161021:1408:16)
at Object.findElements (http://www.rpgmaker.cc/res/js/dev/windeditor/plugins/insertCode/syntaxHihglighter/scripts/shCore.js?v=20161021:934:33)
at Object.highlight (http://www.rpgmaker.cc/res/js/dev/windeditor/plugins/insertCode/syntaxHihglighter/scripts/shCore.js?v=20161021:960:29)
at Object.render (http://www.rpgmaker.cc/res/js/dev/pages/bbs/read.js?v=20161021:612:22)
at http://www.rpgmaker.cc/res/js/dev/pages/bbs/read.js?v=20161021:607:11
at one (http://www.rpgmaker.cc/res/js/dev/wind.js?v=20161021:284:9)
at http://www.rpgmaker.cc/res/js/dev/wind.js?v=20161021:56:29
XRegExp @ shCore.js?v=20161021:94
parseParams @ shCore.js?v=20161021:1408
findElements @ shCore.js?v=20161021:934
highlight @ shCore.js?v=20161021:960
render @ read.js?v=20161021:612
(anonymous) @ read.js?v=20161021:607
one @ wind.js?v=20161021:284
(anonymous) @ wind.js?v=20161021:56
(anonymous) @ wind.js?v=20161021:385
process @ wind.js?v=20161021:498
我也不知道我改了啥就这样报错
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
遇到这种错误信息,通常是因为JavaScript代码在执行过程中遇到了未预期的情况。根据你提供的错误信息,问题出在shCore.js
文件的第94行,与XRegExp
构造函数有关,具体是正则表达式执行exec
方法时返回了非对象或非null值,这不符合预期。
这里有几个可能的解决步骤:
检查更新:首先确认使用的XRegExp
库是否为最新版本,或者是否有已知的bug影响到了你的版本。有时候,升级到最新版可以解决此类问题。
兼容性问题:考虑浏览器兼容性问题。不同的浏览器对JavaScript的支持程度有差异,特别是正则表达式的某些高级特性。确保你的代码在目标浏览器中能够正常工作。
代码审查:回顾你最近的修改,特别是那些涉及到正则表达式、XRegExp
初始化或调用的地方。可能是某个改动无意中破坏了原本的逻辑。
调试:使用开发者工具中的调试功能,逐步执行到第94行,查看正则表达式的内容以及它尝试匹配的数据。这有助于理解为什么exec
会返回异常结果。
查阅文档:再次检查XRegExp
的官方文档,确认你是否正确地使用了它的API。有时候错误的参数传递也会导致这类问题。
简化正则表达式:如果正则表达式非常复杂,尝试简化它,看看是否能避免错误。复杂的正则表达式更容易出现边缘情况和不兼容问题。
寻求社区帮助:如果以上步骤都无法解决问题,可以考虑将问题描述及代码片段(尤其是涉及错误的部分)发布到技术论坛或Stack Overflow上,那里有更多的开发者可能会遇到过类似问题并能提供帮助。
记得在进行任何更改后都要彻底测试,以确保问题得到解决且没有引入新的问题。