Skillbook Logo
foto profilo

Skill Factory

Lista post > Impariamo a programmare con JavaScript - Lezione 6

Impariamo a programmare con JavaScript - Lezione 6

Gino Visciano | Skill Factory - 11/06/2016 18:32:35 | in Tutorials

Benvenuti alla sesta lezione, in questa lezione imparerete a gestire i caratteri e le stringhe.

Per carattere s'intende qualunque simbolo del set grafico usato per scrivere, ad esempio sono caratteri le lettere maiuscole e minuscole, lo spazio, i numeri, il punto, i due punti, la virgola, il punto e virgola, gli operatori matematici, le parentesi e molti simboli speciali.

La tabella in cui sono indicati tutti caratteri fondamentali usati per scrivere si chiama codice ASCII e comprende 256 caratteri, ogni carattere è identificato da un numero decimale da 0 a 255.

Ad esempio la A corrisponde al numero 65, lo 0 al numero 48, lo spazio al numero 32.

La cosa interessante è conoscere i valori di offeset che permettono la conversione di alcuni caratteri.

L'offset 32 è importante perché se sommato al valore numerico si una lettera maiscola oppure se sottratto al valore numerico di una lettera minuscola, permette di ottenere il corrispondente valore minscuolo o maiuscolo.

Ad esempio il codice ASCII della lettera A è 65 se a questo valore sommate 32 ottenete 97 che corrisponde al codice ASCII della lettere a.

Allo stesso modo se alla lettera b, che corrisponde al codice ASCII 98, sottraete 32, ottenete 66 che corrisponde al codice ASCII della lettere B.

Quindi tra le lettere maiscole e quelle minuscole c'è un offset di 32.

Allo stesso modo per i numeri è importante l'offset 48, perché permette di convertire un carattere numerico, nel corrispondente numero intero.

Ad esempio il carattere 0 corrisponde al codice ASCII 48 e non può essere usato per fare calcoli, perché i caratteri si usano solo per scrivere.

Per ottenere il valore numerico intero che corrisponde al carattere 0, basta sottrarre 48 al codice ASCII dello 0, come mostra l'esempio seguente:

CODICE ASCII 0 (48) - OFFSET (48) = NUMERO INTERO 0.

La stessa casa vale per gli altri caratteri numerici, vediamo alcuni esempi:

CODICE ASCII 1 (49) - OFFSET (48) = NUMERO INTERO 1;

CODICE ASCII 2 (50) - OFFSET (48) = NUMERO INTERO 2;

...

CODICE ASCII 9 (57) - OFFSET (48) = NUMERO INTERO 9.

Oggi molti linguaggi di programmazione, tra cui anche JavaScript, non usano più il codice ASCII, ma usano il codice UNICODE, composto da tutti i caratteri usati da tutte le lingue del mondo, che naturalmente sono molti di più di 256.

Anche per il codice UNICODE, valogono i ragionamenti appena fatti, perché i primi 256 caratteri di questo codice corrispondono esattamente a quelli del codice ASCII.

Una stringa è una sequenza di caratteri come ad esempio un nominativo, un indirizzo, una partita iva oppure  un codice fiscale.

Quando si programma le stringhe si scrivono sempre tra doppie virgolette, come ad esempio: "questa è una stringa".

I caratteri si scrivono tra virgolette singole, come ad esempio: 'A' oppure '1'.


Come ottenere la lunghezza di una stringa
var nome="Pippo"; // Creo una variabile di tipo stringa e assegno il valore "Pippo"
var lunghezza=nome.length; // Creo una variabile intera e assegno la lunghezza della stringa che corrisponde al valore 5
 

Come ottenere il codice Ascii dei caratteri delle stringhe
var nome="Pippo"; // Creo una variabile di tipo stringa e assegno il valore "Pippo"
var codice1=nome.charCodeAt(0); // Creo una variabile intera e assegno il codice ASCII del primo carattere della stringa (P)ippo, che corrisponde al valore 80
var codice2=nome.charCodeAt(2); // Creo una variabile intera e assegno il codice ASCII del terzo carattere della stringa Pi(p)po, che corrisponde al valore 112


Come convertire i codici Ascii in caratteri di tipo stringa
var str1=String.fromCharCode( 80 ); // Creo una variabile di tipo stringa e assegno il valore "P" (codice ASCII 80)
var str2=String.fromCharCode( 112 ); // Creo una variabile di tipo stringa e assegno il valore "p" (codice ASCII 112)

 

Come convertire i caratteri di tipo stringa in caratteri
var str1=String.fromCharCode( 80 ); // Creo una variabile di tipo stringa e assegno il valore "P" (codice ASCII 80)
var str2=String.fromCharCode( 112 ); // Creo una variabile di tipo stringa e assegno il valore "p" (codice ASCII 112)
var car1=str1.charAt(0); // Creo una variabile di tipo carattere e assegno il carattere 'P'
var car2=str2.charAt(0); // Creo una variabile di tipo carattere e assegno il carattere 'p'


Come estrarre caratteri da una stringa
var nome="Pippo"; // Creo una variabile di tipo stringa e assegno il valore Pippo
var car1=nome.charAt(0); // // Creo una variabile di tipo carattere e assegno il carattere 'P'
var car2=nome.charCodeAt(2); // Creo una variabile di tipo carattere e assegno il carattere 'p'


Come estrarre da una stringa uno sottostringa
var nominativo="Pippo Rossi"; // Creo una variabile di tipo stringa e assegno il valore "Pippo Rossi"
var cognome=nominativo.substring(7,10); // Creo una variabile di tipo stringa e assegno il valore "Ros", R(7)-o(8)-s(9)=caratteri da 7 a 9 il decimo viene escluso
var nome=nominativo.substring(1,6); // Creo una variabile di tipo stringa e assegno il valore "Pippo", P(1)-i(2)-p(3)-p(4)-o(5)=caratteri da 1 a 5 il sesto viene escluso


Come si concatenano le stringhe
var nome="Pippo";
var cognome="Rossi";
var nominativo=nome+" "+cognome; // Il segno "+" (più), concatena il contenuto della variabile nome ("Pippo") con lo spazio (" ") e il contenuto della variabile cognome ("Rossi")
document.write(nominativo);

oppure

var nome="Pippo";
var cognome="Rossi";
var nominativo=nominativo.concat(nome); // concatena il contenuto della variabile nominativo ("") con il contenuto della variabile nome ("Pippo"), equvale a nominativo+nome
var nominativo=nominativo.concat(" "); // concatena il contenuto della variabile nominativo ("Pippo") con lo spazio (" "), equvale a nominativo+" "
var nominativo=nominativo.concat(cognome); // concatena il contenuto della variabile nominativo ("Pippo ") con il contenuto della variabile cognome ("Rossi"), equvale a nominativo+cognome
document.write(nominativo);


Come convertire i caratteri di una stringa in maiuscolo e minuscolo
var nominativo_minuscolo1="pippo rossi";
var nominativo_maiuscolo1=nominativo_minuscolo.toUpperCase();
var nominativo_maiuscolo2="PIPPO ROSSI";
var nominativo_minuscolo2=nominativo_maiuscolo.toLowerCase();

Come convertire un numero stringa in un numero intero oppure decimale
var strNumero="125";
var numero=parseInt(strNumero);
var strNumeroDec="125.50";
var numeroDec=parseFloat(strNumeroDec);

 

Come ricerca una ricorrenza di caratteri in una stringa
var strcerca="bella";
var frase="Oggi è una bella giornata";
var posizione = frase.indexOf(strcerca);
if (posizione != -1) document.write("La ricorrenza è presente a partire dal carattere:"+(posizione+1));
else document.write("La ricorrenza non è presente");


Arrivederci alla prossima lezione!!!


<< Lezione precedente           Lezione successiva >>


T U T O R I A L S    S U G G E R I T I


Share Button
TOP