易破的 Javascript

Ubreakable Javascript

提问人:Okonai 提问时间:12/22/2015 更新时间:12/22/2015 访问量:83

问:

我想知道是否有一种方法可以保证无论网站上出现任何 JS 错误,某个 JS 代码都将始终运行。

我想制作一个日志记录脚本,在管理页面中记录用户的活动,因此如果出现问题,我可以轻松地重新创建导致错误的工作流程。

那么有什么方法可以做到这一点吗?

谢谢。

JavaScript 测试 日志记录 错误处理 语法错误

评论

1赞 Jitendra Khatri 12/22/2015
使用 try{}catch(function(error){})。您将在 catch 中拥有错误实例(每当错误上升时) 您可以将该错误与 console.dir(error) 一起使用;
0赞 symcbean 12/22/2015
我们是在谈论在服务器上运行还是在客户端上运行的 javascript?

答:

0赞 anshulix 12/22/2015 #1

对于任何语言或任何程序,您都无法保证。

拥有无错误程序的唯一方法是通过彻底测试来创建一个程序。

  1. 为用户的所有可能性创建单元测试用例 故事。
  2. try...捕获 MDN 链接

  3. 控制台.log

就我在 JavaScript 中的工作而言,这些是确保您的程序运行的方法,对于浏览器来说,这有时似乎很棘手,因为一切都在用户端,您只能通过进行强大的编码来控制。

编辑:通过这个评论,我并不打算传达测试是实现无错误代码的唯一方法,您应该知道这一点,但仍然遵循 OOP 的最佳实践。 据我所知,这都是。

评论

1赞 symcbean 12/22/2015
“拥有无错误程序的唯一方法是通过彻底测试来创建一个程序”,所以唐纳德·克努斯错了?
0赞 anshulix 12/22/2015
我也可能是错的,但这是我这些年来在用 javaScript 编码时学到的东西。无论如何,如果你有什么要纠正我的,我很想学习:)
0赞 symcbean 12/22/2015
归纳和穷取 (IME) 是应用于代码的最常见证明。我并不是说测试不是必需的,也不是说测试可能比正式证明更有效。事实上,形式证明并不总是应用于面向对象的代码。但是,笼统地声明“测试”是拥有无错误程序的唯一方法,这完全是错误的。你的工具包中还应该有其他工具来减少错误注入 - 但我不是来教 CompSci 的。
1赞 anshulix 12/22/2015
我的发言是错误的。我了解编码的原理,并且知道如何编写和执行良好的编码技术。我的意图是,任何程序的最后一站都是测试,我相信这是真的。休息感谢您的深思熟虑的评论和分享。
0赞 Okonai 12/22/2015
我的目标是创建一个脚本,该脚本记录任何用户活动,直到错误发生,这样我就可以更轻松地进行调试,并使用完全相同的操作流程测试修复程序。