您当前的位置: 首页 > 

鱼儿-1226

暂无认证

  • 0浏览

    0关注

    1100博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

CocosCreator JS追踪堆栈信息

鱼儿-1226 发布时间:2020-08-25 17:55:55 ,浏览量:0

在开发过程中,可能有这样的需求:即使在没有报错的情况,也需要查看该函数的堆栈调用信息。

对于这样的需求,我们可以使用JS原生的console.trace来实现。

具体代码:

 
  1. export let TraceArr = [];

  2.  
  3.  
  4. console.trace = function () {

  5. var fun = arguments.callee;

  6. let num = 0; //追踪的堆栈深度,可自行设置

  7. do {

  8. fun = fun.arguments.callee.caller;

  9. if (fun && num != 0) {

  10. TraceArr.push(fun.toString());

  11. }

  12. num++;

  13. if (num >= 2 || !fun) {

  14. TraceArr.push("\n--------------------------\n");

  15. break;

  16. }

  17. } while (true);

  18. }

但是,以上方法不能在原生环境(android,ios)中使用,会报以下的错误:

 

所以,CocosCreator应该使用其他的实现方式,这个方法简便:

 
  1. export let TraceArr = [];

  2. function saveStackTrace() {

  3. TraceArr.push(+"-" + new Error().stack);

  4. }

 

关注
打赏
1604459285
查看更多评论
立即登录/注册

微信扫码登录

0.0533s