Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    nosferatu_net
    Guest

    Che nome per una funzione che...

    Sono nel dubbio per come chiamare questo prototipo:

    var pippo = "Pippo andava con Pluto e Minni al mercato";
    trace(pippo.matchCase("Aaaaa...AAAA..AAaaaA"));

    matchCase non mi piace per niente...
    In pratica il metodo si occupa ti far "matchare" il case della stringa su cui viene invocato rispetto a quello della stringa passata.

    Ad esempio:
    pippo.matchCase("A.");
    capitalizza la prima lettera della stringa e lascia invariato il resto;
    pippo.matchCase("a");
    equivale a un toLowerCase.

    Altre alternative a cui pensavo sono:
    String.encase
    String.format

    Capisco che il problema è un non problema, comunque!

  2. #2
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479
    .setCaps() ?

  3. #3
    nosferatu_net
    Guest
    Ecco la funzione in oggetto:
    (serve anche come upping, ovviamente )

    codice:
    String.prototype.setCase = function(pattern)
    {
    	if (typeof pattern != "string") return this;
    	var a="a", _a="A", z="z", _z="Z", str="", i, j, pt, ch;
    	String.prototype.__c = String.prototype.toString;
    	for (i = 0, j = Math.min(this.length, pattern.length); i < j; i++)
    	{
    		ch = this.charAt(i);
    		pt = pattern.charAt(i);
    		String.prototype.__c = pt >= _a && pt <= _z ? 
    		  String.prototype.toUpperCase : pt >= a && pt <= z ? 
    		  String.prototype.toLowerCase : String.prototype.toString;
    		str += ch.__c();
    	}
    	str += this.substring(i).__c();
    	delete String.prototype.__c;
    	return str;
    }
    Per motivi grafici ho inserito due invii a capo sulla riga dei ? perché era troppo lunga e "sbarellava" l'interfaccia del sito. Vanno tolti, altrimenti non funziona.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.