Il problema e' questo :
definire una funzione che ha come parametri una stringa s, e due caratteri c1 e c2. la funzione restituisce una stringa ricavada da s in cui tutte le occorrenze di c1 sono state sostituite con c2. ( esempio, gatto g r genera la stringa ratto, sasso s t restituisce tatto ).

Avevo pensato a questo : definisco la stringa vuota ns, imposto a 0 il contatore, sino a che il contatore e' minore della lunghezza della stringa, se trovo una lettera = a car1 allora sostituisco con car 2, altrimenti restituisco la lettera originale

codice:
function stringa (n,car1,car2){
         var ns = ' ';
				 var i = 0;
				 while (i<n.length) {
				 if ((n.substr(i,1) == car1))
				 ns = n.replace(n.substr(i,1),car2) ;
                                                    else 
                                                    ns = n.substr(i,1);
				 i++;
				 }
				 return ns ;
}
Il ragionamento dovrebbe filare,pero non funziona. Oltretutto replace sostituisce solo la prima occorrenza di una lettera in una stringa, non so che comando usare ...