Latest web development tutorials
×

JavaScript Kurs

JavaScript Kurs JavaScript Kurze Einführung JavaScript Verwendung JavaScript Export JavaScript Grammatik JavaScript Statements JavaScript Note JavaScript Variable JavaScript Datentypen JavaScript Objekte JavaScript Funktion JavaScript Anwendungsbereich JavaScript Ereignis JavaScript Schnur JavaScript Die Betreiber JavaScript vergleichen JavaScript If...Else JavaScript switch JavaScript for JavaScript while JavaScript Break & Continue JavaScript typeof JavaScript Typumwandlung JavaScript Reguläre Ausdrücke JavaScript Fehler JavaScript Fehlerbeseitigung JavaScript Variable Lift JavaScript Strict-Modus JavaScript Missbrauch JavaScript Formularauthentifizierung JavaScript reservierte Schlüsselwörter JavaScript JSON JavaScript void JavaScript Code-Spezifikation

JS Funktion

JavaScript Funktionsdefinition JavaScript Funktionsargumente JavaScript Funktionsaufruf JavaScript Verschlüsse

JS HTML DOM

DOM Kurze Einführung DOM HTML DOM CSS DOM Ereignis DOM EventListener DOM Element

JS Erweiterte Tutorial

JavaScript Objekte JavaScript Number JavaScript String JavaScript Date JavaScript Array JavaScript Boolean JavaScript Math JavaScript RegExp Objekte

JS Browser BOM

JavaScript Window JavaScript Window Screen JavaScript Window Location JavaScript Window History JavaScript Navigator JavaScript Pop JavaScript Timed Ereignis JavaScript Cookies

JS Lagerhaus

JavaScript Lagerhaus JavaScript Test jQuery JavaScript Test Prototype

JS Beispiele

JavaScript Beispiele JavaScript Object-Instanz JavaScript Browser-Objektinstanz JavaScript HTML DOM Beispiele JavaScript Zusammenfassung

JS Referenzhandbuch

JavaScript Objekte HTML DOM Objekte

Eine unsachgemäße Verwendung von JavaScript

In diesem Kapitel werden wir die Verwendung von JavaScript-Fehler zu diskutieren.


Anwendungszuordnung Bedienfehler

In JavaScript-Programm, wenn Sie eine bedingte Anweisung verwenden, wenn der Zuweisungsoperator das Gleichheitszeichen (=) ist, wird eine Fehler Ergebnis erzeugen, der richtige Ansatz ist es, einen Vergleich von zwei Gleichheitszeichen zu verwenden (==).

wenn bedingte Anweisung false zurückgibt (wir erwarten) , da x nicht gleich 10 ist:

var x = 0;
if (x == 10)

Versuchen »

wenn bedingte Anweisung gibt true (nicht , dass wir erwartet) Anweisung ausgeführt wird , weil die Bedingungen für die Zuweisung x 10.10 gilt:

var x = 0;
if (x = 10)

Versuchen »

wenn bedingte Anweisung gibt false (nicht das, was wir erwartet hatten) Anweisung ausgeführt wird , weil die Bedingungen für die Zuweisung x 0,0 ist falsch:

var x = 0;
if (x = 0)

Versuchen »
Note Gibt den Wert der Variablen-Zuordnung.

Häufige Fehler Vergleich

Bei herkömmlichen Vergleich wird der Datentyp ignoriert, wenn die folgende Bedingung Anweisung liefert true:

var x = 10;
var y = "10";
if (x == y)

Versuchen »

In strengen Vergleichsoperation, eine Identität Berechnung === Operator, während der Wert des Ausdrucks der Typprüfung, die folgenden Bedingungen if-Anweisung false zurückgibt:

var x = 10;
var y = "10";
if (x === y)

Versuchen »

Dieser Fehler tritt häufig in der switch-Anweisung switch-Anweisung den Identitätsoperator berechnet (===) verglichen:

Die folgenden Beispiele Alarm Pop ausführen:

var x = 10;
Schalter (x) {
Fall 10: alert ( "Hallo" );
}

Versuchen »

Die folgenden Beispiele sind inkonsistent, da der Typ nicht auf die Warnung Popups nicht durchführt:

var x = 10;
Schalter (x) {
Fall "10": alert ( " Hallo");
}

Versuchen »

Hinzufügen und Verbindungs ​​Überlegungen

Eine Addition von zwei Zahlen zusammen.

Die Verbindungszeichenfolge , die beiden zu verbinden.

Addition und JavaScript werden mit dem Operator + verbunden.

Als nächstes können wir zwei Zahlen miteinander und mit einer Reihe von Zahlen und Unterscheidung beispielhaft zu sehen:

var x = 10 + 5; // x 15 Ergebnisse
var x = 10 + "5" ; Ergebnisse // x ist "105"

Versuchen »

Die Verwendung von Variablen, die Ergebnisse Hinzufügen sind widersprüchlich:

var x = 10;
var y = 5;
var z = x + y; Ergebnisse // z 15

var x = 10;
var y = "5";
var z = x + y; Ergebnisse // z "105"

Versuchen »

Beachten Sie die Verwendung von Floating-Point-Daten

JavaScript Alle Daten basieren auf 64-Bit - Gleitkomma - Datentyp (float) zu speichern.

Alle Programmiersprachen, einschließlich JavaScript, Punktgenauigkeit der Daten zu schwebenden sind schwer zu bestimmen:

var x = 0,1;
var y = 0,2;
var z = x + y Ergebnisse // z 0,3
if (z == 0.3) // Gibt false zurück

Versuchen »

Ich dieses Problem lösen, können Sie eine ganze Zahl Multiplikation und Division zu lösen verwenden:

Beispiele

var z = (x * 10 + y * 10) / 10; // z Ergebnis ist 0,3

Versuchen »

JavaScript-String Branchen

Wir verwenden Zeilenumbrüche JavaScript-Anweisungen in der Zeichenfolge auszuführen:

Beispiel 1

var x =
"Hallo Welt!";

Versuchen »

Doch in der String direkt Wagenrücklauf wird gegeben für:

Beispiel 2

var x = "Hallo
Welt! ";

Versuchen »

Wir können das Entwicklungswerkzeug oder drücken Sie F12, wählen Sie die Fehlermeldung zu sehen:

String Zeilenumbrüche müssen einen Backslash (\) zu verwenden, wie folgt:

Beispiel 3

var x = "Hallo \
Welt! ";

Versuchen »

Falsches Semikolon

Das folgende Beispiel, da das Semikolon falsch, wenn die Anweisung Codeblock wird nicht ausgeführt:

if (x == 19);
{
// Codeblock
}

Versuchen »

Return-Anweisung Vorsichtsmaßnahmen

JavaScript ist der Standard endet automatisch in der letzten Zeile des Codes.

Die folgenden zwei Beispiele geben das gleiche Ergebnis (a kein Semikolon):

Beispiel 1

Funktion myFunction (a) {
var Leistung = 10
zurückgeben * Macht
}

Versuchen »

Beispiel 2

Funktion myFunction (a) {
var Leistung = 10;
zurückgeben * Macht;
}

Versuchen »

JavaScript kann auch eine mehrzeilige Anweisung zu beenden verwendet werden.

Die folgenden Beispiele geben das gleiche Ergebnis:

Beispiel 3

Funktion myFunction (a) {
var
Leistung = 10;
zurückgeben * Macht;
}

Versuchen »

Allerdings werden die folgenden Beispiele der zurückgegebenen Ergebnissenicht definiert:

Beispiel 4

Funktion myFunction (a) {
var
Leistung = 10;
Rückkehr
a * Macht;
}

Versuchen »

Warum gibt es ein solches Ergebnis? Da in JavaScript, um Beispiele für konsistente 4-Code und den folgenden Code:

function myFunction(a) {
    var
    power = 10;  
    return;       // 分号结束,返回 undefined
    a * power;
}

auflösen

Wenn es eine unvollständige Anweisung ist wie folgt:

var

JavaScript wird versuchen, die zweite Zeile Anweisung zu lesen:

power = 10;

Da jedoch diese Aussage ist komplett:

return

JavaScript schaltet sich automatisch die Anweisung:

return;

In JavaScript ist das Semikolon optional.

Da die Rückkehr ein vollständiger Satz ist, wird es JavaScript return-Anweisung deaktivieren.

NoteHinweis: Verwenden Sie nicht die Linie der return - Anweisung brechen.

Verwenden Sie ein Array-Indexnamen

Viele Programmiersprachen ermöglichen die Verwendung des Namens als Array-Index.

So verwenden Sie den Namen als der Index des Arrays aufgerufen wird ein assoziatives Array (oder Hash).

JavaScript nicht die Verwendung des Namens zu Index-Arrays unterstützen, nur einen numerischen Index.

Beispiele

var person = [];
Person [0] = "John" ;
Person [1] = "Doe" ;
Person [2] = 46;
var x = person.length; // Person.length Returns 3
var y = person [0]; // Person [0] gibt "John"

Versuchen »

In JavaScript, verwenden Sie den Namen des Objekts als Index.

Wenn Sie den Namen als Index verwenden, wenn das Array zugreift, wird JavaScript, um die Standard-Array von Objekten neu zu definieren.

Nach Durchführung dieser Operation, Methoden und Eigenschaften des Arrays werden nicht mehr verwendet werden, sonst wird es zu einem Fehler:

Beispiele

var person = [];
Person [ "firstname"] = " John";
Person [ "nachName"] = " Doe";
Person [ "Alter"] = 46 ;
var x = person.length; // person.length liefert 0
var y = person [0]; // Person [0] gibt undefined

Versuchen »

Definieren Sie ein Array-Element, und schließlich kann kein Komma hinzufügen

Fehler sind definiert:

points = [40, 100, 1, 5, 25, 10,];

Die korrekte Definition der Art und Weise:

points = [40, 100, 1, 5, 25, 10];

Definieren Sie das Objekt, und schließlich kann kein Komma hinzufügen

Fehler sind definiert:

websites = {site:"本教程", url:"www.w3big.com", like:460,}

Die korrekte Definition der Art und Weise:

websites = {site:"本教程", url:"www.w3big.com", like:460}

Nicht definiert nicht Null

In JavaScript, null für Objekte, nicht definiert für Variablen, Eigenschaften und Methoden.

Die Objekte sind nur dann möglich, als null, sonst undefiniert definiert.

Wenn wir wollen, zu prüfen, ob das Vorhandensein des Objekts, wenn das Objekt noch nicht einen Fehler werfen definiert ist.

Falsche Verwendung:

if (myObj !== null && typeof myObj !== "undefined") 

Der richtige Weg ist, dass wir typeof verwenden müssen, um zu erkennen, ob ein Objekt definiert wurde:

if (typeof myObj !== "undefined" && myObj !== null) 

Block-Rahmen

JavaScript nicht einen neuen Bereich in jedem Codeblock zu erstellen, der allgemeine Umfang der einzelnen Codeblock sind global.

Der folgende Code i Variable gibt 10 statt undefined:

Beispiele

for (var i = 0; i <10; i ++) {
// Einige Code
}
Rückkehr i;

Versuchen »