|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Dec 2007
Messaggi: 659
|
[JS] Conteggio degli Zeri
Ragazzi so che è stupido stupido come programma ma sto imparando.. e non capisco dov'è l'errore
Codice:
function forEach(array, action) {
for (var i = 0; i < array.length; i++)
action(array[i]);
}
var base=0;
function reduce(combine, base, array) {
forEach(array, function (element) {
base = combine(base, element);
});
return base;
}
function countZeroes(numeri){
return reduce(function (a, b){if (b===0) {a=a+1; return a;}}, 0, numeri);
}
alert(countZeroes([0,23,0,23,4,0,0,4]));
Avete qualche idea?..Continua a restituirmi Undefined |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3010
|
Controlla return a;
__________________
~Breve riferimento ai comandi GNU/Linux (ormai non molto breve...) |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Dec 2007
Messaggi: 659
|
Codice:
function forEach(array, action) {
for (var i = 0; i < array.length; i++)
action(array[i]);
}
var base=0;
function reduce(combine, base, array) {
forEach(array, function (element) {
base = combine(base, element);
});
return base;
}
function countZeroes(numeri){
return reduce(function (a, b){if (b===0) {return a+1;}}, 0, numeri);
}
show(countZeroes([0,23,0,23,4,0,0,4]));
Potresti essere più preciso? Grazie! |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3010
|
Si tratta di una subdola stupidata: non ritorni sempre qualcosa, il return è annidato in una graffa di troppo.
La funzione anonima passata a reduce finisce per "ritornare" undefined tutte le volte che non incontra uno zero. Codice:
function forEach(array, action) {
for (var i = 0; i < array.length; i++)
action(array[i]);
}
var base=0;
function reduce(combine, base, array) {
forEach(array, function (element) {
base = combine(base, element);
});
return base;
}
function countZeroes(numeri){
return reduce(function (a, b){if (b===0) {a=a+1; } return a; }, 0, numeri);
}
alert(countZeroes([0,23,0,23,4,0,0,4]));
__________________
~Breve riferimento ai comandi GNU/Linux (ormai non molto breve...) |
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Dec 2007
Messaggi: 659
|
Quote:
Ahh.. Sei un grande. Grazie |
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3010
|
Prego, in tutti i casi complimenti per la follia di questa conta
Tra l'altro la variabile base contemporaneamente globale ed argomento mi fa un po' deragliare la psiche... non ho ancora afferrato al 100% che strada segue, però funziona. Edit: ok, funziona anche eliminando base globale, ora mi sento più sollevato...
__________________
~Breve riferimento ai comandi GNU/Linux (ormai non molto breve...) Ultima modifica di Gimli[2BV!2B] : 29-12-2011 alle 21:02. Motivo: Non ci avrei dormito stanotte! |
|
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: Dec 2007
Messaggi: 659
|
Quote:
Solo che ora ho un altro problema che mi fa deragliare veramente..ma apro un altro thread.
|
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 12:53.




















