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