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