Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Prototipi in Javascript

Aggiungere funzioni a oggetti predefiniti come stringhe e array è possibile: scopriamo come.
Aggiungere funzioni a oggetti predefiniti come stringhe e array è possibile: scopriamo come.
Link copiato negli appunti

Sto lavorando ad uno script che molto probabilmente troverete nelle pagine di PRO tra breve. Un'operazione piuttosto ricorrente dello script è verificare se una stringa è contenuta all'interno di un'altra. Inizialmente il codice che ho usato era qualcosa del tipo:

if(s.indexOf("stringa_da_cercare")>=0){
    //fai qualcosa
    }

Sebbene sia un approccio semplice, trovo che sacrifichi un po' la leggibilità . Mi sono chiesto: ci sarà  un modo un po' più pulito per farlo?

Mi sono documentato un po' e ho scritto il mio primo prototipo. L'oggetto String (di cui indexOf fa parte) può essere esteso con metodi propri attraverso i prototipi. Ecco quindi il prototipo del metodo find per le stringhe:


String.prototype.find=function(what){
return(this.indexOf(what)>=0 ? true : false);
}

Le righe precedenti nello script vanno sistemate necessariamente all'esterno di ogni altra funzione o all'interno di una funzione che viene chiamata in ogni caso: a questo punto potremo usare find sulle stringhe, sapendo che restituirà  vero o falso a seconda che abbia trovato o meno la stringa da cercare. Il codice che abbiamo visto all'inizio diventa quindi:

if(s.find("stringa_da_cercare")){
    //fai qualcosa
    }

Trovo che sia decisamente più leggibile. Concludo segnalando Usefull prototype methods for JavaScript
con molti prototipi già  pronti che potranno esservi utili per manipolare stringhe e array.

Ti consigliamo anche