Uno dei problemi piรน comuni per gli sviluppatori consiste nella gestione dei cosiddetti caratteri speciali allโinterno delle pagine web. Per quanto riguarda HTML, il problma รจ facilmente risolvibile mediante il ricoprso alle cosiddette entitร โฆ ma in Javascript come รจ possibile gestire accenti e caratteri speciali allโinterno delle stringhe?
Lettere accentate e Javascript: facciamo un esempio
Supponiamo, ad esempio, di dover scrivere, allโinterno di una variabile Javascript, la frase โQualโรจ la tua cittร di nascita?โ, stringa che poi dovremo stampare a video con un classico document.write oppure allโinterno di un alert o di una finestra generata mediante il metodo confirm o prompt.
Se provassimo semplicemente ad utilizzare un codice come questo allโinterno di un documento HTML con encoding UTF-8, infatti, otterremo dei caratteri strani al posto delle nostre lettere accentate:
var str = "Qual'รจ la tua cittร di nascita?";
alert(str);
Lโerrore รจ dovuto, appunto, alla errata gestione delle lettere accentate nel contento del charset della pagina web. Lโutilizzo delle entitร HTML, ovviamente, non รจ risolutivo se si tratta di variabili plain text (allโinterno di un alert, ad esempio, non puรฒ essere usato codice HTML). Come risolvere, quindi, il problema delle lettere accentate in Javascript?
Conversione in Unicode
Per risolvere il problema e gestire correttamente accenti e caratteri speciali in Javascript รจ necessario ricorrere alla conversione dei caratteri in formato Unicode. Ad esempio la lattera accentata รจ deve essere sostituita con la seguente sequenza di caratteri \u00E8, mentre la lettera ร deve essere sostituita con \u00E0. Alla luce di quanto appena detto possiamo rivedere il nostro codice dโesempio in questo modo:
var str = "Qual'\u00E8 la tua citt\u00E0 di nascita?";
alert(str);
Se proviamo ad eseguire questo codice otterremo, differentemente dallโesempio precedente, un alert con un testo ben formattato.
Lettere accentate in formato Unicode
Di seguito una semplice tabella con lโelenco delle lettere accentate utilizzate piรน di frequente nella lingua italiana e delle rispettive rappresentazioni Unicode:
Accenti gravi
| Carattere | Unicode |
|---|---|
| ร | \u00E0 |
| รจ | \u00E8 |
| รฌ | \u00EC |
| รฒ | \u00F2 |
| รน | \u00F9 |
Accenti acuti
| Carattere | Unicode |
|---|---|
| รก | \u00E1 |
| รฉ | \u00E9 |
| รญ | \u00ED |
| รณ | \u00F3 |
| รบ | \u00FA |
Per convertire facilmente un testo contenente caratteri speciali ed accenti in Unicode, infine, vi invito ad utilizzare questo utilissimo strumento disponibile allโinterno della nostra raccolta su Toolset.it

