Originariamente inviato da dies
ciao, ora provo.. ma toglimi una curiosità.. perché (this.selected===true) con tre =?

ciao

dies
=== (uguaglianza rigorosa)
Disponibilità
Flash Player 6.

Uso
expression1 === expression2

Valori restituiti
Un valore booleano.

Descrizione
Operatore; verifica l'uguaglianza di due espressioni; l'operatore di uguaglianza rigorosa si comporta come l'operatore di uguaglianza ma i tipi di dati non vengono convertiti. Il risultato è true se entrambe le espressioni, inclusi i tipi di dati corrispondenti, sono uguali.

L'uguaglianza dipende dal tipo di dati del parametro:

Numeri e valori booleani vengono confrontati in base al valore e considerati uguali se il loro valore è identico.
Le espressioni di stringhe si equivalgono se hanno lo stesso numero di caratteri e i caratteri sono identici.
Variabili, oggetti, matrici e funzioni vengono confrontati come riferimento. Due variabili sono uguali se fanno riferimento allo stesso oggetto, matrice o funzione. Due matrici distinte non vengono mai considerate uguali, anche se sono costituite dallo stesso numero di elementi.
Esempio
Il codice riportato di seguito mostra il valore restituito dalle operazioni che usano operatori di uguaglianza, uguaglianza rigorosa e diseguaglianza rigorosa.

s1 = new String("4");
s2 = new String("4");
s3 = new String("Ciao");
n = new Number(4);
b = new Boolean(true);

s1 == s2; // true
s1 == s3; // false
s1 == n; // true
s1 == b; // false

s1 === s2; // true
s1 === s3; // false
s1 === n; // false
s1 === b; // false

s1 !== s2; // false
s1 !== s3; // true
s1 !== n; // true
s1 !== b; // true