Berechnen Sie den Wert des folgenden Ausdrucks:
[''] == falsch
Zunächst sind die beiden Operanden Objekttyp und Boolesche Typ. Nach Abbildung 1 ist es notwendig, den booleschen Typ in einen numerischen Typ umzuwandeln, und das Ergebnis der Umwandlung von Falsch in einen Numarer ist 0, so dass der Ausdruck:
[''] == 0
Die beiden Operanden werden Objekttyp und numerische Typ. Gemäß Abbildung 1 muss der Objekttyp in den ursprünglichen Typ konvertiert werden:
Rufen Sie zuerst [] .Valueof () an. Da die ValueOf () -Methode des Arrays selbst zurückgibt, ist das Ergebnis nicht der ursprüngliche Typ. Rufen Sie weiter [] .ToString () an.
Für Arrays besteht der Algorithmus der toString () -Methode darin, jedes Element in einen String -Typ umzuwandeln und dann nacheinander mit Kommas zu verkettet, sodass das Endergebnis eine leere Zeichenfolge ist, die ein Wert des ursprünglichen Typs ist.
An diesem Punkt wird der Ausdruck:
'' == 0
Die beiden Operanden werden an Zeichenstypen und numerischen Typen. Gemäß Abbildung 1 ist es erforderlich, den String -Typ in einen Zahlentyp umzuwandeln. Wie bereits erwähnt, wird die leere Zeichenfolge zu einer Anzahl von 0. Daher wird der Ausdruck:
0 == 0
Bisher sind die Arten der beiden Operanden endlich gleich, und das Ergebnis ist offensichtlich wahr.