Javascript作業—行列除去(要求:プロトタイプチェーンに関数を追加)

3103 ワード

配列デ重量(要求:プロトタイプチェーンに関数を追加)
 

<span style="color:#008000;">//</span><span style="color:#008000;">    ,  :         </span>

<span style="color:#008000;">//</span><span style="color:#008000;">      --     </span>
<span style="color:#0000ff;">if</span>(!<span style="color:#000000;">Array.prototype.unique1){
    Array.prototype.unique1</span>=<span style="color:#0000ff;">function</span><span style="color:#000000;">(){
        </span><span style="color:#0000ff;">var</span><span style="color:#000000;"> item ,
            hash</span>=<span style="color:#000000;">{},
            len</span>=<span style="color:#0000ff;">this</span><span style="color:#000000;">.length,
            result</span>=<span style="color:#000000;">[];
        </span><span style="color:#0000ff;">for</span>(<span style="color:#0000ff;">var</span> i = 0 ; i < len ; i++<span style="color:#000000;">){
            item </span>= <span style="color:#0000ff;">this</span><span style="color:#000000;">[i];
            </span><span style="color:#0000ff;">if</span>(!hash[item+Object.prototype.toString.call(item)]){ <span style="color:#008000;">//</span><span style="color:#008000;">1   '1'   </span>
<span style="color:#000000;">                result.push(item);
                hash[item</span>+Object.prototype.toString.call(item)]=<span style="color:#0000ff;">true</span><span style="color:#000000;">;
            }
        }
        </span><span style="color:#0000ff;">return</span><span style="color:#000000;"> result;
    }
}
 
</span><span style="color:#008000;">//</span><span style="color:#008000;">     --      ,  </span>
Array.prototype.unique2=<span style="color:#0000ff;">function</span><span style="color:#000000;"> (){
    </span><span style="color:#0000ff;">for</span>(<span style="color:#0000ff;">var</span> i=0;i <=<span style="color:#0000ff;">this</span>.length;i++<span style="color:#000000;">){
        </span><span style="color:#0000ff;">for</span>(<span style="color:#0000ff;">var</span> j=i+1;j<=<span style="color:#0000ff;">this</span>.length;j++<span style="color:#000000;">)
        {
            </span><span style="color:#0000ff;">if</span>(arr[i]===arr[j]){arr.splice(j,1);j--;} //    
<span style="color:#000000;">        }
    }
    </span><span style="color:#0000ff;">return</span><span style="color:#000000;"> arr;
}


</span><span style="color:#0000ff;">var</span> arr=[1,'1',2,3,3,4,5,4,4<span style="color:#000000;">];

</span>
 
転載先:https://www.cnblogs.com/dinghanhua/p/9708139.html