欧美大屁股bbbbxxxx,狼人大香伊蕉国产www亚洲,男ji大巴进入女人的视频小说,男人把ji大巴放进女人免费视频,免费情侣作爱视频

歡迎來到入門教程網(wǎng)!

JavaScript

當前位置:主頁 > 網(wǎng)絡編程 > JavaScript >

TypeScript之調(diào)用棧的實現(xiàn)

來源:本站原創(chuàng)|時間:2020-01-10|欄目:JavaScript|點擊: 次

本文介紹了TypeScript之調(diào)用棧,分享給大家,具體如下:

class CallStackTool{
  private static index:number = 0;
  public static printCallStack (count:number , simple: boolean = true):void {
    let caller:Function = arguments.callee.caller;
    let i:number = 0;
    count = count || 10;
    CallStackTool.index ++;
    if( CallStackTool.index > 500 ) CallStackTool.index = 1;
    console.log(`***-----------------${CallStackTool.index}Start----------------------- **`);
    while (caller && i < count) {
      console.log(`${(i+1)}: \n ${CallStackTool.getFunctionName(caller,simple)}`);
      caller = caller.caller;
      i++;
    }
    console.log(`***-----------------${CallStackTool.index}End----------------------- **`);
  }

  private static getFunctionName(func:any,simple: boolean):string {
    if( simple ){
      let name:any;
      if ( typeof func == 'function' ) {
        name = ('' + func).match(/function\s*\((\s*\$*\S+\s*,)*(\s*\$*\S+\s*)?\)/g);
        let $result: string = name && name[0];
        if( $result != `function ()` ){
          return $result;
        }
      }
    }
    return func.toString();
  }
}

測試代碼:

class Test2CallStack{

  public add( i:number, b:number ):number{
    CallStackTool.printCallStack(2,true);
    return i +b;
  }

  public a( c:number, q:number ): number{
    return this.add(c,q);
  }

  public print() : void{
    console.log(`${this.a(1,1)}`);
  }
}

開始測試:

結(jié)果:

所以,盡量給function的參數(shù)取一些好的名字.

另外一點 , 不會出現(xiàn)function()這樣的打印 , 出現(xiàn)沒有參數(shù)的function , 我會將方法體內(nèi)容也打印出來

如果需要把每一個function的方法體的內(nèi)容打印出來CallStackTool.printCallStack(2,false), 將第二個參數(shù)設置未false

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持我們。

上一篇:微信小程序封裝多張圖片上傳api代碼實例

欄    目:JavaScript

下一篇:微信小程序?qū)崿F(xiàn)一個簡單swiper代碼實例

本文標題:TypeScript之調(diào)用棧的實現(xiàn)

本文地址:http://mengdiqiu.com.cn/a1/JavaScript/9350.html

網(wǎng)頁制作CMS教程網(wǎng)絡編程軟件編程腳本語言數(shù)據(jù)庫服務器

如果侵犯了您的權(quán)利,請與我們聯(lián)系,我們將在24小時內(nèi)進行處理、任何非本站因素導致的法律后果,本站均不負任何責任。

聯(lián)系QQ:835971066 | 郵箱:835971066#qq.com(#換成@)

Copyright © 2002-2020 腳本教程網(wǎng) 版權(quán)所有