Informationen
Das angeforderte Thema wird unten angezeigt. Es ist jedoch nicht in dieser Bibliothek vorhanden.

Problembehandlung bei Skripts (JavaScript)

In jeder Programmiersprache gibt es Stellen, die Überraschungen bereit halten. So verhält sich beispielsweise der null-Wert in JavaScript nicht wie die gleiche Null-Wert in den Programmiersprachen C oder C++.

Im Folgenden werden einige mögliche Problembereiche beim Schreiben von Skripts in JavaScript erörtert.

Beim Schreiben von Skripts ist es wichtig, Details zu beachten. So müssen z. B. Zeichenfolgen in Anführungszeichen eingeschlossen werden.

Die JavaScript-Interpretation ist Teil des HTML-Analyseprozesses des Webbrowsers. Wenn Sie ein Skript innerhalb des <HEAD>-Tags eines Dokuments platzieren, wird dieses vor allen Teilen des <BODY>-Tags interpretiert. Wenn Sie über Objekte verfügen, die im <BODY>-Tag erstellt wurden, sind diese zum Zeitpunkt der <HEAD>-Analyse nicht vorhanden, und können nicht vom Skript bearbeitet werden.

Hinweis Hinweis

Dieses Verhalten ist spezifisch für Internet Explorer. ASP und WSH verfügen über andere Ausführungsmodelle (wie auch andere Hosts).

JavaScript ist eine Sprache mit flexibler Typbindung und automatischer Umwandlung. Obwohl die Werte mit verschiedenen Typen nicht identisch sind, werden die Ausdrücke im folgenden Beispiel zu true ausgewertet.

"100" == 100;
false == 0;

Verwenden Sie den strikten Gleichheitsoperator (===), um zu überprüfen, ob Typ und Wert identisch sind. Die folgenden Ausdrücke werden beide als "false" ausgewertet:

"100" === 100;
false === 0;

Die Operatorrangfolge bestimmt, wann ein Vorgang während der Auswertung eines Ausdrucks ausgeführt wird. Im folgenden Beispiel wird die Multiplikation vor der Subtraktion durchgeführt, obwohl die Subtraktion im Ausdruck weiter vorne vorkommt.

theRadius = aPerimeterPoint - theCenterpoint * theCorrectionFactor;

Wenn in einem Skript die Eigenschaften eines Objekts mit einer for…in-Schleife durchlaufen werden, können Sie die Reihenfolge, in der die Felder des Objekts der Schleifenzählvariablen zugewiesen werden, nicht vorhersagen oder steuern. Darüber hinaus kann die Reihenfolge in verschiedenen Implementierungen der Sprache unterschiedlich sein.

Das with-Schlüsselwort ist nützlich zum Ansprechen von Eigenschaften, die in einem bestimmten Objekt bereits vorhanden sind. Sie kann jedoch nicht verwendet werden, um Eigenschaften zu einem Objekt hinzuzufügen. Wenn Sie neue Eigenschaften in einem Objekt erstellen möchten, müssen Sie ausdrücklich auf das Objekt verweisen.

Obwohl Sie das this-Schlüsselwort innerhalb der Definition eines Objekts verwenden, um auf das Objekt selbst zu verweisen, können Sie this oder ähnliche Schlüsselwörter nicht verwenden, um auf die gegenwärtig ausgeführte Funktion zu verweisen, wenn diese Funktion keine Objektdefinition ist. Wenn die Funktion einem Objekt als Methode zugewiesen werden soll, können Sie das this-Schlüsselwort innerhalb der Funktion verwenden, um auf das Objekt zu verweisen.

Das </SCRIPT>-Tag beendet das aktuelle Skript, wenn der Interpreter darauf trifft. Um "</SCRIPT>" selbst anzuzeigen, schreiben Sie dieses Tag als mindestens zwei Zeichenfolgen um, z. B. als "</SCR" und "IPT>", die Sie danach in der Anweisung, die diese schreibt, miteinander verketten können.

Da zu einem Zeitpunkt mehrere Fenster geöffnet sein können, zeigt jeder implizite Fensterverweis auf das aktuelle Fenster. Für andere Fenster müssen Sie explizite Verweise verwenden.

Community-Beiträge

Anzeigen:
© 2014 Microsoft. Alle Rechte vorbehalten.