相关文章推荐
小百科
›
遞增運算子(++) - JavaScript | MDN
mdn
犯傻的小笼包
6 月前
JavaScript
Tutorials and guides
JavaScript Guide
Introduction
Grammar and types
Control flow and error handling
Loops and iteration
Functions
Expressions and operators
Numbers and strings
Representing dates & times
Regular expressions
Indexed collections
Keyed collections
Working with objects
Using classes
Using promises
JavaScript typed arrays
Iterators and generators
Resource management
Internationalization
JavaScript modules
Intermediate
Language overview
JavaScript data structures
Equality comparisons and sameness
Enumerability and ownership of properties
Closures
Advanced
Inheritance and the prototype chain
Meta programming
Memory Management
References
Built-in objects
AggregateError
Array
ArrayBuffer
AsyncDisposableStack
AsyncFunction
AsyncGenerator
AsyncGeneratorFunction
AsyncIterator
Atomics
BigInt
BigInt64Array
BigUint64Array
Boolean
DataView
Date
decodeURI()
decodeURIComponent()
DisposableStack
encodeURI()
encodeURIComponent()
Error
escape()
eval()
EvalError
FinalizationRegistry
Float16Array
Float32Array
Float64Array
Function
Generator
GeneratorFunction
globalThis
Infinity
Int8Array
Int16Array
Int32Array
InternalError
Non-standard
Intl
isFinite()
isNaN()
Iterator
JSON
Map
Math
NaN
Number
Object
parseFloat()
parseInt()
Promise
Proxy
RangeError
ReferenceError
Reflect
RegExp
Set
SharedArrayBuffer
字串
SuppressedError
Symbol
SyntaxError
Temporal
TypedArray
TypeError
Uint8Array
Uint8ClampedArray
Uint16Array
Uint32Array
undefined
unescape()
URIError
WeakMap
WeakRef
WeakSet
Expressions & operators
加法(+)
Addition assignment (+=)
Assignment (=)
async function expression
async function* expression
await
Bitwise AND (&)
Bitwise AND assignment (&=)
Bitwise NOT (~)
Bitwise OR (|)
Bitwise OR assignment (|=)
Bitwise XOR (^)
Bitwise XOR assignment (^=)
class expression
Comma operator (,)
條件運算子
遞減運算子(--)
屬性的刪除
解構
相除運算子(/)
Division assignment (/=)
Equality (==)
指數運算子(**)
Exponentiation assignment (**=)
function expression
function* expression
Greater than (>)
Greater than or equal (>=)
Grouping operator ( )
import.meta
import.meta.resolve()
import()
in
遞增運算子(++)
Inequality (!=)
instanceof
Left shift (<<)
Left shift assignment (<<=)
Less than (<)
Less than or equal (<=)
Logical AND (&&)
Logical AND assignment (&&=)
Logical NOT (!)
Logical OR (||)
Logical OR assignment (||=)
相乘運算子(*)
Multiplication assignment (*=)
建構子函數的使用
new.target
null
Nullish coalescing assignment (??=)
Nullish coalescing operator (??)
Object initializer
運算子優先序
可選串連
Property accessors
Remainder (%)
Remainder assignment (%=)
Right shift (>>)
Right shift assignment (>>=)
Spread syntax (...)
Strict equality (===)
Strict inequality (!==)
相減運算子(-)
Subtraction assignment (-=)
super
this
typeof
一元負號運算子(-)
一元正號(+)
Unsigned right shift (>>>)
Unsigned right shift assignment (>>>=)
void operator
yield
yield*
Statements & declarations
async function
async function*
await using
區塊
break
class
const
continue 語法
debugger
do...while 語法
Empty statement
export
Expression statement
for 語法
for await...of
for...in
for...of
function
function*
if...else
import
Import attributes
label
let
return
switch
throw
try...catch 語法
using
var
while 語法
with
Functions
箭頭函式
預設參數
getter
方法定義
其餘參數
setter
The arguments object
[Symbol.iterator]()
callee
length
Classes
建構子
extends
Private elements
Public class fields
static
Static initialization blocks
Regular expressions
Backreference: \1, \2
Capturing group: (...)
Character class escape: \d, \D, \w, \W, \s, \S
Character class: [...], [^...]
Character escape: \n, \u{...}
Disjunction: |
Input boundary assertion: ^, $
Literal character: a, b
Lookahead assertion: (?=...), (?!...)
Lookbehind assertion: (?<=...), (?<!...)
Modifier: (?ims-ims:...)
Named backreference: \k<name>
Named capturing group: (?<name>...)
Non-capturing group: (?:...)
Quantifier: *, +, ?, {n}, {n,}, {n,m}
Unicode character class escape: \p{...}, \P{...}
Wildcard: .
Word boundary assertion: \b, \B
Errors
AggregateError: No Promise in Promise.any was resolved
Error: Permission denied to access property "x"
InternalError: too much recursion
RangeError: argument is not a valid code point
RangeError: BigInt division by zero
RangeError: BigInt negative exponent
RangeError: form must be one of 'NFC', 'NFD', 'NFKC', or 'NFKD'
RangeError: invalid array length
RangeError: invalid date
RangeError: precision is out of range
RangeError: radix must be an integer
RangeError: repeat count must be less than infinity
RangeError: repeat count must be non-negative
RangeError: x can't be converted to BigInt because it isn't an integer
ReferenceError: "x" is not defined
ReferenceError: assignment to undeclared variable "x"
ReferenceError: can't access lexical declaration 'X' before initialization
ReferenceError: must call super constructor before using 'this' in derived class constructor
ReferenceError: super() called twice in derived class constructor
SyntaxError: 'arguments'/'eval' can't be defined or assigned to in strict mode code
SyntaxError: "0"-prefixed octal literals are deprecated
SyntaxError: "use strict" not allowed in function with non-simple parameters
SyntaxError: "x" is a reserved identifier
SyntaxError: \ at end of pattern
SyntaxError: a declaration in the head of a for-of loop can't have an initializer
SyntaxError: applying the 'delete' operator to an unqualified name is deprecated
SyntaxError: arguments is not valid in fields
SyntaxError: await is only valid in async functions, async generators and modules
SyntaxError: await/yield expression can't be used in parameter
SyntaxError: cannot use `??` unparenthesized within `||` and `&&` expressions
SyntaxError: character class escape cannot be used in class range in regular expression
SyntaxError: continue must be inside loop
SyntaxError: duplicate capture group name in regular expression
SyntaxError: duplicate formal argument x
SyntaxError: for-in loop head declarations may not have initializers
SyntaxError: function statement requires a name
SyntaxError: functions cannot be labelled
SyntaxError: getter and setter for private name #x should either be both static or non-static
SyntaxError: getter functions must have no arguments
SyntaxError: identifier starts immediately after numeric literal
SyntaxError: illegal character
SyntaxError: import declarations may only appear at top level of a module
SyntaxError: incomplete quantifier in regular expression
SyntaxError: invalid assignment left-hand side
SyntaxError: invalid BigInt syntax
SyntaxError: invalid capture group name in regular expression
SyntaxError: invalid character in class in regular expression
SyntaxError: invalid class set operation in regular expression
SyntaxError: invalid decimal escape in regular expression
SyntaxError: invalid identity escape in regular expression
SyntaxError: invalid named capture reference in regular expression
SyntaxError: invalid property name in regular expression
SyntaxError: invalid range in character class
SyntaxError: invalid regexp group
SyntaxError: invalid regular expression flag "x"
SyntaxError: invalid unicode escape in regular expression
SyntaxError: JSON.parse: bad parsing
SyntaxError: label not found
SyntaxError: missing : after property id
SyntaxError: missing ) after argument list
SyntaxError: missing ) after condition
SyntaxError: missing ] after element list
SyntaxError: missing } after function body
SyntaxError: missing } after property list
SyntaxError: missing = in const declaration
SyntaxError: missing formal parameter
SyntaxError: missing name after . operator
SyntaxError: missing variable name
SyntaxError: negated character class with strings in regular expression
SyntaxError: new keyword cannot be used with an optional chain
SyntaxError: nothing to repeat
SyntaxError: numbers out of order in {} quantifier.
SyntaxError: octal escape sequences can't be used in untagged template literals or in strict mode code
SyntaxError: parameter after rest parameter
SyntaxError: private fields can't be deleted
SyntaxError: property name __proto__ appears more than once in object literal
SyntaxError: raw bracket is not allowed in regular expression with unicode flag
SyntaxError: redeclaration of formal parameter "x"
SyntaxError: reference to undeclared private field or method #x
SyntaxError: rest parameter may not have a default
SyntaxError: return not in function
SyntaxError: setter functions must have one argument
SyntaxError: string literal contains an unescaped line break
SyntaxError: super() is only valid in derived class constructors
SyntaxError: tagged template cannot be used with optional chain
SyntaxError: Unexpected '#' used outside of class body
SyntaxError: Unexpected token
SyntaxError: unlabeled break must be inside loop or switch
SyntaxError: unparenthesized unary expression can't appear on the left-hand side of '**'
SyntaxError: use of super property/member accesses only valid within methods or eval code within methods
SyntaxError: Using //@ to indicate sourceURL pragmas is deprecated. Use //# instead
TypeError: 'caller', 'callee', and 'arguments' properties may not be accessed
TypeError: 'x' is not iterable
TypeError: "x" is (not) "y"
TypeError: "x" is not a constructor
TypeError: "x" is not a function
TypeError: "x" is not a non-null object
TypeError: "x" is read-only
TypeError: already executing generator
TypeError: BigInt value can't be serialized in JSON
TypeError: calling a builtin X constructor without new is forbidden
TypeError: can't access/set private field or method: object is not the right class
TypeError: can't assign to property "x" on "y": not an object
TypeError: can't convert BigInt to number
TypeError: can't convert x to BigInt
TypeError: can't define property "x": "obj" is not extensible
TypeError: can't delete non-configurable array element
TypeError: can't redefine non-configurable property "x"
TypeError: can't set prototype of this object
TypeError: can't set prototype: it would cause a prototype chain cycle
TypeError: cannot use 'in' operator to search for 'x' in 'y'
TypeError: class constructors must be invoked with 'new'
TypeError: cyclic object value
TypeError: derived class constructor returned invalid value x
TypeError: getting private setter-only property
TypeError: Initializing an object twice is an error with private fields/methods
TypeError: invalid 'instanceof' operand 'x'
TypeError: invalid Array.prototype.sort argument
TypeError: invalid assignment to const "x"
TypeError: Iterator/AsyncIterator constructor can't be used directly
TypeError: matchAll/replaceAll must be called with a global RegExp
TypeError: More arguments needed
TypeError: null/undefined has no properties
TypeError: property "x" is non-configurable and can't be deleted
TypeError: Reduce of empty array with no initial value
TypeError: setting getter-only property "x"
TypeError: WeakSet key/WeakMap value 'x' must be an object or an unregistered symbol
TypeError: X.prototype.y called on incompatible type
URIError: malformed URI sequence
Warning: -file- is being assigned a //# sourceMappingURL, but already has one
Warning: unreachable code after return statement
Misc
JavaScript technologies overview
Execution model
Lexical grammar
Iteration protocols
Strict mode
Template literals
Trailing commas
Deprecated features
推荐文章