tryjs 在webkit中对于跨域的脚本错误无法捕获其stack,经常让我们无法定位上报的问题。tryjs利用try-catch将函数包裹起来,使错误捕获变得更加容易。对于基于AMD和jQuery的网站,大多数业务函数都是通过回调异步触发的,所以我们只需将所有异步函数包裹起来就能捕获大部分错误。

例如,对于require函数,通常的使用方式是:

require(['./main'], function (main) {

main.init();

});

对于setTimeout函数,也可以这样包装:

setTimeout(function () {

dosomething();

}, 1000);

这种包装方式有助于在异步函数中捕获异常并进行处理。