Heim  >  Artikel  >  Web-Frontend  >  Detaillierte Erklärung von sechs Fehlertypen in JavaScript

Detaillierte Erklärung von sechs Fehlertypen in JavaScript

韦小宝
韦小宝Original
2018-01-15 11:25:501829Durchsuche

Dieser Artikel gibt Ihnen eine detaillierte Einführung in die sechs Fehlertypen in JavaScript. Schüler, die gerade erst das Front-End betreten haben und nicht sehr gut in Englisch sind, rätseln immer noch über Konsolenfehler? Heute werde ich Ihnen einen Blick auf die häufigsten Fehlertypen in JavaScript werfen. Wenn Sie mit JavaScript-Fehlern nicht vertraut sind, können Sie diesen Artikel gemeinsam lesen.

Die Konsolenfehlerinformationen in js sind hauptsächlich in zwei Kategorien unterteilt . Ein Typ ist Grammatikfehler. Wenn dieser Fehlertyp während des Voranalysevorgangs auftritt, schlägt die Ausführung der gesamten js-Datei fehl. Eine andere Art von Fehler wird zusammenfassend als Ausnahme bezeichnet. Diese Art von Fehler führt dazu, dass der Code nach der Zeile, in der der Fehler auftritt, nicht ausgeführt werden kann, der Code vor dieser Zeile jedoch nicht betroffen ist.

1. SyntaxError: Syntaxfehler

// 1. Syntax Error: 语法错误
// 1.1 变量名不符合规范
var 1       // Uncaught SyntaxError: Unexpected number
var 1a       // Uncaught SyntaxError: Invalid or unexpected token
// 1.2 给关键字赋值
function = 5     // Uncaught SyntaxError: Unexpected token =

2. Nicht erfasster ReferenceError: Referenzfehler

Beim Verweisen auf eine nicht vorhandene Variable tritt ein Fehler auf. Weisen Sie einem Objekt einen Wert zu, der nicht zugewiesen werden kann, beispielsweise das Ergebnis einer Funktion oder einer Funktionszuweisung.

// 2.1 引用了不存在的变量
a()       // Uncaught ReferenceError: a is not defined
console.log(b)     // Uncaught ReferenceError: b is not defined
// 2.2 给一个无法被赋值的对象赋值
console.log("abc") = 1   // Uncaught ReferenceError: Invalid left-hand side in assignment

3. RangeError: Bereichsfehler

RangeError ist ein Fehler, der auftritt, wenn ein Bereich knapp außerhalb des gültigen Bereichs liegt. Es gibt mehrere Hauptsituationen: Die erste besteht darin, dass die Array-Länge eine negative Zahl ist. Die zweite besteht darin, dass die Methodenparameter des Number-Objekts außerhalb des zulässigen Bereichs liegen und der Funktionsstapel den Maximalwert überschreitet.

// 3.1 数组长度为负数
[].length = -5      // Uncaught RangeError: Invalid array length
// 3.2 Number对象的方法参数超出范围
var num = new Number(12.34)
console.log(num.toFixed(-1))   // Uncaught RangeError: toFixed() digits argument must be between 0 and 20 at Number.toFixed
// 说明: toFixed方法的作用是将数字四舍五入为指定小数位数的数字,参数是小数点后的位数,范围为0-20.

4. TypeError

Ein Fehler, der auftritt, wenn eine Variable oder ein Parameter nicht vom erwarteten Typ ist. Wenn Sie beispielsweise newstring, Boolean und andere primitive Typen verwenden und Methoden aufrufen, die nicht im Objekt vorhanden sind, wird dieser Fehler ausgegeben, da der Parameter des neuen Befehls ein Konstruktor sein sollte .

// 4.1 调用不存在的方法
123()        // Uncaught TypeError: 123 is not a function
var o = {}
o.run()        // Uncaught TypeError: o.run is not a function
// 4.2 new关键字后接基本类型
var p = new 456      // Uncaught TypeError: 456 is not a constructor

5. URIError, URL-Fehler

ist hauptsächlich auf falsche Parameter der zugehörigen -Funktion zurückzuführen.

decodeURI("%")     // Uncaught URIError: URI malformed at decodeURI

Fehler, die ausgelöst werden, wenn URI-bezogene Parameter falsch sind, betreffen hauptsächlich sechs Funktionen: encodeURI, decodeURI(), encodeURIComponent(), decodeURIComponent(), escape() und unescape().

6. EvalError eval()-Funktionsausführungsfehler

Wenn in JavaScript unter ES5 die eval()-Funktion nicht korrekt ausgeführt wird, wird ein evalError wird geworfen.

Zum Beispiel die folgende Situation:

var myEval = eval;
myEval("alert('call eval')");

Es ist zu beachten, dass dieser Fehler in JavaScript über ES5 nicht mehr ausgelöst wird, Sie diesen Typ jedoch weiterhin über das neue Schlüsselwort Error anpassen können Nachricht.

Die oben genannten 6 abgeleiteten Fehler sind zusammen mit dem ursprünglichen Fehlerobjekt allesamt Konstruktoren. Entwickler können damit Instanzen von Fehlerobjekten generieren.

new Error([message[,fileName[,lineNumber]]]),

Der erste Parameter stellt die Fehlermeldung dar, der zweite ist der Dateiname und der dritte ist die Zeilennummer.

Zusammenfassung

Die oben genannten sechs Fehlertypen in JavaScript werden Ihnen hoffentlich weiterhelfen! !

Verwandte Empfehlungen:

JavaScript zur Implementierung einer schnellen Sortieranalyse

Teilen Sie eine bessere Lösung für JavaScript, um Asynchronität zu erleben

Javascript entspricht dem in js kommentierten regulären Ausdruckscode

Das obige ist der detaillierte Inhalt vonDetaillierte Erklärung von sechs Fehlertypen in JavaScript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn