😈╰•ALBERTO•╯😈 giusto per completezza, secondo quanto ho detto prima (Giulio_M), riporto tutto il codice (quindi creando una variabile "x" anziché usare le funzioni).
let V=[true, true, false, false, true]
let trueCount = 0;
let falseCount = 0;
let x;
for (let i = 0; i < V.length; i++) {
if (V[i]) {
trueCount++;
} else {
falseCount++;
}
}
if (trueCount > falseCount) {
x='true';
} else if (falseCount > trueCount) {
x='false';
} else {
x='null';
}
console.log(x)
In questo caso, dato che abbiamo let V=[true, true, false, false, true]
come valore di console.log(x)
viene stampato "true". Se provi a modificare ciò che è contenuto nell'array, vedi infatti che viene stampato rispettivamente "false" o "null".
Considera che questo codice da per scontato che il contenuto dell'array sia corretto ovvero che contenga solametne "true" oppure "false"; altrimenti basterebbe aggiungere una condizione ulteriore più restrittiva anziché semplicemente if-else nel ciclo (nel senso che se V[ i ] è diverso sia da "true" che "false", non incrementa nessun contatore quindi anziché if-else mettere due if separati, questa è solamente una sottigliezza).