假设我调用3个javascript(jquery)文件,如下所示:
<script type="text/javascript" src="js/file1.js"></script>
<script type="text/javascript" src="js/file2.js"></script>
<script type="text/javascript" src="js/file3.js"></script>
file2.js上存在脚本错误(或函数出错):例如,它说“函数不存在”。2因为file2.js中有错误,所以file3.js中的脚本不执行。
是否有办法确保file3.js中的脚本仍然执行?或者,是否有可能绕过或忽略file2.js中的错误?
6条答案
按热度按时间oxiaedzo1#
可以在包含错误的代码周围使用try catch块
但是,只有当错误是外部库的已知条件/不可避免的问题,或者只发生在错误的用户输入时,才应该这样做,而不应该使用它让程序不惜一切代价地继续运行。
避免错误的一些方法
var
关键字,或者附加到全局对象,则可以在声明之外的位置修改它们。javascript也没有块作用域。确保您知道变量被修改的所有位置,并尽可能限制变量的作用域。尤其要避免使用太多全局变量来保存状态。因为在没有许多空/类型检查的情况下可能难以知道当前状态。处理错误的一些方法
不应该做什么
jdgnovmf2#
如果您没有时间进行调试,请尝试以下操作:
称之为:
功能非常简单:创建一个总是返回true的函数,然后无论何时发生错误,都调用此函数(返回true并隐藏错误)。
e4eetjau3#
可以使用try和catch语句。并使用
!= null
条件检查是否为nullg9icjywg4#
将导致错误的调用 Package 在try...catch块中:
balp4ylt5#
你可以通过使用这个来保存“函数未定义”
6qftjkof6#
我建议在假设对象(包括函数)存在之前,在对象周围添加适当的空值检查,这样代码就会优雅地失败。
以下是一些想法:Javascript check if function exists