Una delle caratteristiche principali di JavaScript è la flessibilità con cui è possibile estendere anche gli oggetti di base per aggiungere metodi non disponibili nativamente nel linguaggio. Di seguito vorrei mostrare un semplice metodo che somma tutti i valori numerici di un array.
Ecco il metodo, chiamato sum()
aggiunto all'oggetto Array
:
if(typeof Array.prototype.sum !== 'function') {
Array.prototype.sum = function() {
var total = 0;
for(var i = 0; i < this.length; i += 1) {
total += this[i];
}
return total;
};
}
L'operatore +=
usato sui numeri somma il valore che lo precede a quello che lo segue. Esempio:
window.onload = function() {
var arr = [1, 2, 6, 9];
alert(arr.sum()); // 18
};