JSアレイにおける演算素子の数が発生し、重複排除を達成するために

関数同様にgetCount(ARR、ランク、ranktype){ 
     VAR OBJ = {}、ARR1 =のK、[];
     のためのVAR ; IがLEN <I ++はI = 0、LEN = arr.length {)
        K = ARR [I]。
         IF (OBJ [K])、
            OBJ [K] ++ ;
         他の 
            OBJ [K] = 1 ; 
    } 
    //の結果{IL- '要素'、COUNT-発生}を保存
    するためのVARの O OBJ){ 
        arr1.push ({EL:O、COUNT:OBJ [O]を}); 
    } 
    // (降順) 
    arr1.sort(関数(N1、N2){
         戻り n2.count - n1.countは
    }); 
    // ranktype 1は、昇順のために、配列を反転場合
    IF(ranktypeは=== 1 ){ 
        ARR1の = arr1.reverse(); 
    } 
    VARランク= ||ランク-1 arr1.length;
     戻り arr1.slice(0 、ランク-1); 
} 

同様にgetCount([ 1,2,3,1,2,5,2,4,1,2,6,2,1,3 、2])// デフォルトで、すべての要素が表示されるの数戻り 
同様にgetCount([1,2,3,1,2,5,2,4,1,2,6,2,1,3,2]、3 )// (ランク= 3)を渡すパラメータは、唯一のソーティングの三の発生戻り 
、[(1,2,3,1,2,5,2,4,1,2,6,2,1,3を同様にgetCountを2]、NULL、1)// パラメータ渡し(ranktype = 1、ランク= NULL )、 昇順発生数のすべての要素を返します
同様にgetCount([1,2,3,1,2,5,2,4,1,2,6,2,1,3,2]、3,1)// 送信パラメータ(ランク= 3、ranktype = 1 )、最初の3中)昇順に(ソートの数が表示された返し

 

おすすめ

転載: www.cnblogs.com/cengjingdeshuige/p/11572417.html