PROGRAMMIAMO
JS - Stringhe di caratteri
Stringhe di caratteri

In informatica si dice stringa (string) una sequenza di caratteri. Una singola parola, una frase o il codice fiscale sono tre semplici esempi di stringhe. Sono anche stringhe (se non vengono convertiti in valori numerici) i contenuti delle caselle di input o delle aree di testo in un form.

In JS le stringhe non sono tecnicamente degli oggetti (per esempio non vengono create per mezzo di costruttori, come giÓ accennato), ma vengono rappresentate come tali e dunque possiedono proprietÓ e metodi, come vedremo fra breve. Si consideri il seguente semplice esempio:

<head>

<meta charset="windows-1252">

<title> Semplice esempio in Javascript</title>

<script> 

function visualizza()
{
    var contenuto =  document.getElementById('testo').value;
    window.alert(contenuto);
}
</script>
 

</head>

<body>



<form action="">
<p>
  <textarea id="testo" rows="10" cols="30"></textarea><br>
  <input type="button" value="Mostra" onClick="visualizza()">
</p>
</form>


</body>

Il funzionamento Ŕ molto semplice: cliccando sul pulsante Mostra, si apre una finestra di alert nella quale viene visualizzato ci˛ che Ŕ stato scritto all'interno della casella di testo.


 

La proprietÓ length

Una delle proprietÓ pi¨ interessanti delle stringhe Ŕ la proprietÓ length, per mezzo della quale Ŕ possibile conoscere la lunghezza di una stringa (ovvero il numero di caratteri che la compongono) utilizzando la proprietÓ length. A tale scopo Ŕ sufficiente introdurre una semplicissima modifica nella funzione visualizza() del nostro precedente script:

<head>

<meta charset="windows-1252">

<title> Semplice esempio in Javascript</title>

<script> 

function visualizza()
{
    var contenuto =  document.getElementById('testo').value;
    window.alert(contenuto.length);
}
</script>
 

</head>

Il lettore pu˛ facilmente verificare il funzionamento dello script qui sotto:


La proprietÓ length  pu˛ essere usata (per esempio visualizzata), ma non Ŕ possibile modificarne il valore attraverso una assegnazione diretta. Non avrebbe infatti senso scrivere

stringa.length = valore;

Infatti la lunghezza di una stringa dipende dalla stringa contenuta e non pu˛ essere cambiata con una assegnazione.

E' interessante osservare come Ŕ possibile applicare la proprietÓ length anche direttamente al contenuto di una input text, come nell'esempio qui sotto:

lunghezza = document.getElementById('n').value.length;

Si osservi che value Ŕ evidentemente una proprietÓ dell'oggetto document.getElementById('n'). A sua volta length Ŕ una proprietÓ di document.getElementById('n').value. Ci˛ indica, evidentemente, che document.getElementById('n').value Ŕ un oggetto di tipo String.

Come abbiamo detto, gli oggetti in JS sono spesso organizzati in una gerarchia nella quale gli oggetti genitori (parent) danno luogo a oggetti figli (son), come mostra la tabella seguente:

Oggetto Tipo di oggetto Posizione Gerarchica
document.getElementById('n') "object" grandparent
document.getElementById('n').value "string" parent
document.getElementById('n').value.length "number" son

 

 

precedente - successiva

Sito realizzato in base al template offerto da

http://www.graphixmania.it