2014-06-05 93 views
-3

我想檢查一個Javascript數組是否有5個一致的成員具有相同的值。所以JavaScript數組一致遍歷

function checkArray(value,array){ 
    for (var i=0;i<array.length;i++){ 
     if (array[i]==value){ 

    }  
    } 
} 

var a=[2,3,5,5,5,5,5,5,6,7], 
    b=[4,4,4,5,5,4,5,5,5,4] 

checkArray(5,a) //return true 
checkArray(5,b) //return false 

回答

0
var a = [2, 3, 5, 5, 5, 5, 5, 5, 6, 7], 
    b = [4, 4, 4, 5, 5, 4, 5, 5, 5, 4]; 

function checkArray(num, len, array) { 
    for(var i = 0; i < array.length - len; i += 1) { 
     var flag = true; 
     for (var j = i; j < i + len && flag; j += 1) { 
      flag = array[j] === num; 
     } 
     if (flag) { 
      return true; 
     } 
    } 
    return false; 
} 

console.assert(checkArray(5, 5, a) === true); 
console.assert(checkArray(5, 5, b) === false); 
console.assert(checkArray(4, 3, b) === true); 

這裏num是被發現的數量,len是連續項的長度相匹配。