JavaScript异常报错处理:Uncaught TypeError: xxx is not a function

摘要

  页面报错bug是常有的事,我们可以根据错误bug提示关键性的去修复问题。依稀的记得之前有个小伙伴询问了一个js异常的错误bug:Uncaught TypeError: xxx is not a function。这个错误问题定位处理起来很快,但是我却不知其所以然。为了弄清楚报错的深层面原因,去调研了关于错误的解决方案。学习吸取别人的经验,对这个常见的报错的原理有了新的认识,这次就分享总结Uncaught TypeError的错误原由以及解决方案。具体报错信息如下图所示:

 

 解决方案

   一、在引用并尝试调用该方法时,未在调用前声明定义该方法,因此解析为undefined。在调用方法时,undefined不是函数(例如错误提示)。

  二、声明定义的函数名不能和页面的某个标签的id名相同。某些浏览器仅通过在js代码中指定id即可访问节点元素,然后在DOM中的元素会覆盖所声明定义的函数。(这个错误的原因需要特别注意,因为很少有人会注意到这类比较特别的错误原因) 

 

 

参考文档

  https://stackoverflow.com/questions/15338973/typeerror-xxx-is-not-a-function/15339330#15339330

  https://stackoverflow.com/questions/12816400/javascript-typeerror-xxx-is-not-a-function

 

posted @ 2020-06-30 17:03  请给我一杯冰可乐  阅读(6101)  评论(0编辑  收藏  举报