JS簡単なソートアルゴリズム

アルゴリズム:

@ 基本アルゴリズム:平坦化の配列
        // 利用...    
        // 2つだけ平ら   
        //
         { 
            LETのARR = [1、[2,3]、[4,5 ]、
              LETのARR2は = ''     ; 
              ARR2は = [] .concat(ARR ...)
              はconsole.log(ARR2である)
        } 
        

        // 再帰アルゴリズム
        { 
            LETのARR = [1、[2,3]、[[[4,5。]]]]; 
            平坦化(ARR ); 
            関数平坦化(ARR){
                 リターン[] .concat(
                        ... arr.map(X => Array.isArray(X)?平坦化(X):X)         
            } 
            CONSOLE.LOG(平坦化(ARR))
        } 

        // 実行するために60以上のミリ秒の最後の実行から機能絞りアルゴリズム
        // アイデア:スロットルを実行した後、ロックは、ロックが偽の実行の場合にのみロックされFUNCは、
        // このスロットルロックがfalseに順番に実行の最後の60ミリ秒から離れ必要
        {
             関数スロットル(FUNC、ディレイ= 60 ){ 
                letのロック = falseにリターン(引数...)=> {
                     IF(ロック){ リターン} 
                    FUNC(argsが...); 
                    ロック = trueに; 
                のsetTimeout(() => = {ロック}、ディレイ)     
                } 
            } 
        } 

        // 第2スロットル機能、何回演算した後、実装前に
        // アイデア:ノンストップ運転、タイマーは、実行私は常に繰り返されるタイマーをオーバーレイ繰り返してきました、
        // 必要が最後の実行タイマーが私スロットルをクリアできない、
        {
             機能スロットル(= 300 FUNC、遅延は、私は= ヌル{)
                 のリターンを(引数...)=> { 
                    てclearInterval(I); 
                    私は = setTimeout(func.bind(ヌル、引数...)、ディレイ);
                     // 私はsetTimeoutを((引数...)=> FUNC(引数...)、遅延)=; //同上

                }  
            }
        }

おすすめ

転載: www.cnblogs.com/wxyblog/p/12047594.html