webForumDet fria alternativet

Kontrollera nummerföljd

JavaScript

1 svar · 393 visningar · startad av learn

Medlem sedan jan. 20051 130 inlägg
Frågan#1

Jag har en array vars element har denna struktur:

10-3

Alltså en siffra mellan 0 och 99 följt av ett bindestreck och sedan en siffra som är mellan 0-9. Arrayen har ett okänt antal element. Nu vill jag kontrollera att elementen följer en viss ordning, nämligen att första siffran (10 i ovan nämnda ex) adderat med den andra siffran (3 i ovan nämnda ex) är lika med nästa elements siffra. Dvs: ska nästa elements första siffra vara 13 i ex ovan.

Hur ska koden se ut för detta?

Tack på förhand!!

Medlem sedan dec. 20025 483 inlägg
#2
function checkArr(arr, n){
    if (n >= arr.length - 1){ return true }
    if (parseInt(arr[n].match(/^\d+/)) + parseInt(arr[n].match(/\d+$/)) != arr[n+1].match(/^\d+/)){ return false }
    return checkArr(arr, ++n);
}

Funktionen returnerar true om följden är riktig; false annars. Anropa med:

checkArr([i]arr[/i], 0);

Där arr är din array. :)

250 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)