Довідка помилок JavaScript
Нижче – список помилок, які викидаються JavaScript. Ці помилки можуть бути корисними при зневадженні, але виведена проблема не завжди є зразу зрозумілою. Сторінки нижче надають додаткові подробиці про ці помилки. Кожна помилка є об'єктом, заснованим на об'єкті Error, і має name і message.
Помилки, виведені у вебконсолі, можуть містити посилання на відповідну сторінку нижче, щоб допомогти швидко зрозуміти проблему у коді.
Вступний підручник початківця з усунення помилок JavaScript дивіться Що пішло не так? Зневадження JavaScript.
Список помилок
У цьому списку кожна сторінка перелічена за назвою (типом помилки) та повідомленням (більш докладним повідомленням про помилку, доступним для прочитання людиною). Разом ці дві властивості надають початкову точку для розуміння та вирішення помилки. Більше інформації – за посиланнями нижче!
- TypeError: already executing generator
- Warning: -file- is being assigned a //# sourceMappingURL, but already has one
- TypeError: invalid Array.prototype.sort argument
- SyntaxError: await/yield expression can\'t be used in parameter
- SyntaxError: arguments is not valid in fields
- SyntaxError: unlabeled break must be inside loop or switch
- SyntaxError: await is only valid in async functions, async generators and modules
- SyntaxError: continue must be inside loop
- SyntaxError: new keyword cannot be used with an optional chain
- SyntaxError: tagged template cannot be used with optional chain
- RangeError: radix must be an integer
- SyntaxError: invalid regular expression flag "x"
- SyntaxError: \'arguments\'/\'eval\' can\'t be defined or assigned to in strict mode code
- SyntaxError: return not in function
- SyntaxError: super() is only valid in derived class constructors
- RangeError: BigInt negative exponent
- RangeError: BigInt division by zero
- TypeError: BigInt value can\'t be serialized in JSON
- SyntaxError: use of super property/member accesses only valid within methods or eval code within methods
- TypeError: calling a builtin X constructor without new is forbidden
- TypeError: X.prototype.y called on incompatible type
- TypeError: can\'t assign to property "x" on "y": not an object
- ReferenceError: can\'t access lexical declaration \'X\' before initialization
- TypeError: can\'t convert x to BigInt
- TypeError: can\'t convert BigInt to number
- RangeError: x can\'t be converted to BigInt because it isn\'t an integer
- TypeError: can\'t define property "x": "obj" is not extensible
- TypeError: property "x" is non-configurable and can\'t be deleted
- SyntaxError: private fields can\'t be deleted
- TypeError: can\'t redefine non-configurable property "x"
- TypeError: can\'t set prototype of this object
- SyntaxError: cannot use ?? unparenthesized within || and && expressions
- TypeError: class constructors must be invoked with \'new\'
- TypeError: Iterator/AsyncIterator constructor can\'t be used directly
- TypeError: cyclic object value
- TypeError: \'caller\', \'callee\', and \'arguments\' properties may not be accessed
- SyntaxError: applying the \'delete\' operator to an unqualified name is deprecated
- TypeError: can\'t set prototype: it would cause a prototype chain cycle
- SyntaxError: octal escape sequences can\'t be used in untagged template literals or in strict mode code
- SyntaxError: "0"-prefixed octal literals are deprecated
- SyntaxError: Using //@ to indicate sourceURL pragmas is deprecated. Use //# instead
- SyntaxError: property name __proto__ appears more than once in object literal
- SyntaxError: duplicate formal argument x
- SyntaxError: getter and setter for private name #x should either be both static or non-static
- TypeError: can\'t access/set private field or method: object is not the right class
- RangeError: form must be one of \'NFC\', \'NFD\', \'NFKC\', or \'NFKD\'
- SyntaxError: getter functions must have no arguments
- SyntaxError: functions cannot be labelled
- TypeError: setting getter-only property "x"
- SyntaxError: identifier starts immediately after numeric literal
- SyntaxError: illegal character
- SyntaxError: Unexpected \'#\' used outside of class body
- SyntaxError: import declarations may only appear at top level of a module
- TypeError: cannot use \'in\' operator to search for \'x\' in \'y\'
- RangeError: invalid array length
- SyntaxError: invalid BigInt syntax
- SyntaxError: invalid assignment left-hand side
- TypeError: invalid assignment to const "x"
- RangeError: invalid date
- SyntaxError: for-in loop head declarations may not have initializers
- TypeError: invalid \'instanceof\' operand \'x\'
- SyntaxError: JSON.parse: bad parsing
- TypeError: derived class constructor returned invalid value x
- TypeError: WeakSet key/WeakMap value \'x\' must be an object or an unregistered symbol
- TypeError: \'x\' is not iterable
- SyntaxError: label not found
- SyntaxError: a declaration in the head of a for-of loop can\'t have an initializer
- URIError: malformed URI sequence
- SyntaxError: missing ] after element list
- SyntaxError: missing } after function body
- SyntaxError: missing : after property id
- SyntaxError: missing formal parameter
- SyntaxError: missing } after property list
- SyntaxError: missing = in const declaration
- SyntaxError: missing name after . operator
- SyntaxError: missing ) after condition
- SyntaxError: missing ) after argument list
- TypeError: More arguments needed
- TypeError: "x" is not a non-null object
- RangeError: repeat count must be non-negative
- TypeError: can\'t delete non-configurable array element
- TypeError: null/undefined has no properties
- SyntaxError: missing variable name
- TypeError: "x" is not a constructor
- RangeError: argument is not a valid code point
- TypeError: "x" is not a function
- RangeError: precision is out of range
- SyntaxError: parameter after rest parameter
- TypeError: Initializing an object twice is an error with private fields/methods
- TypeError: getting private setter-only property
- TypeError: "x" is read-only
- AggregateError: No Promise in Promise.any was resolved
- Error: Permission denied to access property "x"
- SyntaxError: redeclaration of formal parameter "x"
- TypeError: Reduce of empty array with no initial value
- SyntaxError: \ at end of pattern
- SyntaxError: duplicate capture group name in regular expression
- SyntaxError: character class escape cannot be used in class range in regular expression
- SyntaxError: incomplete quantifier in regular expression
- SyntaxError: invalid capture group name in regular expression
- SyntaxError: invalid class set operation in regular expression
- SyntaxError: invalid character in class in regular expression
- SyntaxError: invalid decimal escape in regular expression
- SyntaxError: invalid regexp group
- SyntaxError: invalid identity escape in regular expression
- SyntaxError: invalid property name in regular expression
- SyntaxError: invalid named capture reference in regular expression
- SyntaxError: invalid range in character class
- SyntaxError: invalid unicode escape in regular expression
- SyntaxError: numbers out of order in {} quantifier.
- SyntaxError: nothing to repeat
- SyntaxError: negated character class with strings in regular expression
- SyntaxError: raw bracket is not allowed in regular expression with unicode flag
- TypeError: matchAll/replaceAll must be called with a global RegExp
- SyntaxError: "x" is a reserved identifier
- RangeError: repeat count must be less than infinity
- SyntaxError: rest parameter may not have a default
- Warning: unreachable code after return statement
- SyntaxError: setter functions must have one argument
- SyntaxError: string literal contains an unescaped line break
- SyntaxError: "use strict" not allowed in function with non-simple parameters
- ReferenceError: super() called twice in derived class constructor
- InternalError: too much recursion
- ReferenceError: must call super constructor before using \'this\' in derived class constructor
- SyntaxError: reference to undeclared private field or method #x
- TypeError: "x" is (not) "y"
- SyntaxError: unparenthesized unary expression can\'t appear on the left-hand side of \'**\'
- SyntaxError: Unexpected token
- ReferenceError: assignment to undeclared variable "x"
- SyntaxError: function statement requires a name
- ReferenceError: "x" is not defined