[JavaScript] 獲取數組中相同元素的個數


    /**
     * 獲取數組中相同元素的個數
     * @param val 相同的元素
     * @param arr 傳入數組
     */
    function getSameNum(val,arr){
        processArr = arr.filter(function(value) {
            return value == val;
        })
        return processArr.length;
    }
// 去除數組中相鄰的重復元素
    Array.prototype.distinctCloseTo = function() {
        var $ = this;
        var o3 = new Array();
        var t = 0
        for (var i = 0; i < $.length; i++) {
            if ($[i] != $[i - 1]) {

                o3[t] = $[i];
                t++;
            }
        }

        $.length = 0;
        for (var j = 0; j < o3.length; j++) {
            $[j] = o3[j];
        }
        return o3;
    }
    /**
     * 獲取數組中相鄰的重復元素的最大個數
     * @param val 指定相鄰元素值
     * @param arr 傳入數組
     * @returns {number} 相鄰的重復元素的最大個數
     */
    function getSiblingMax(val,arr) {
        var t=0;
        var max=0;
        for (var i = 0; i < arr.length; i++) {
            if(arr[i]==val&&arr[i] == arr[i - 1]){
                t++;
                if(max<t){
                    max = t;
                }
            }else{
                t=0;
            }
        }
        return max+1;
    }
    var a = [2, 3, 3, 4, 4, 4, 4, 5, 6,3, 'a', 'a', 'a', 'b', 'a', 'b', 'c'];
    console.log(getSiblingMax(4,a));//4
    console.log(a.distinctCloseTo());//[2, 3, 4, 5, 6, 3, "a", "b", "a", "b", "c"]
    console.log(getSameNum(1,[1,2,3,1]));//2

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM