javascript故障安全插件

时间:2012-05-11 14:54:33

标签: javascript html

是否可以编写将运行的Javascript,无论网站上的其他JS代码是否失败?根据我的经验到目前为止,一旦JS抛出错误,所有其他代码应该继续它不起作用。是否有可能写出一些永远有效的东西?我也无法控制网站上的所有JS代码。

想法?

1 个答案:

答案 0 :(得分:0)

是的,但需要一些努力。想象一下,您正在使用具有方法f的某个框架x。试试这个:

 <script src="...."> // load the real "f"
 <script>

 if (type f === 'undefined') { f = {}; }
 if (type f.x === 'undefined') { f.x = function() {}; }
 ....
 </script>

如果远程脚本无法加载/执行,仍将定义f。您的脚本中的检查确保您可以致电f.x,而无需担心或淹没try{}catch中的代码。

作为zzzzBov demonstrated in his fiddle,框架脚本中的失败只会中止其执行。处理完错误后(通常将其记录到控制台),浏览器将继续使用下一个script元素。