---
title: 陳述式與宣告
slug: Web/JavaScript/Reference/Statements
tags:
- JavaScript
- Reference
- statements
translation_of: Web/JavaScript/Reference/Statements
---
{{jsSidebar("Statements")}}
JavaScript 應用程式由適當的陳述式組成。一個單一的陳述式可以跨用好幾行。 多個陳述式也可以藉由分號分隔來寫在同一行。 這不是一個關鍵字,而是一群關鍵字。
陳述式與宣告分類
For an alphabetical listing see the sidebar on the left.
流程控制
- {{jsxref("Statements/block", "Block")}}
- A block statement is used to group zero or more statements. The block is delimited by a pair of curly brackets.
- {{jsxref("Statements/break", "break")}}
- 中斷當下的迴圈、條件判斷(switch)或是標籤(label)陳述式,並將程式流程轉到被中斷陳述式後的陳述式。
- {{jsxref("Statements/continue", "continue")}}
- Terminates execution of the statements in the current iteration of the current or labeled loop, and continues execution of the loop with the next iteration.
- {{jsxref("Statements/Empty", "Empty")}}
- An empty statement is used to provide no statement, although the JavaScript syntax would expect one.
- {{jsxref("Statements/if...else", "if...else")}}
- 當特定的條件為真時執行一段陳述式,若為假則另一段陳述式就會被執行。
- {{jsxref("Statements/switch", "switch")}}
- Evaluates an expression, matching the expression's value to a case clause, and executes statements associated with that case.
- {{jsxref("Statements/throw", "throw")}}
- Throws a user-defined exception.
- {{jsxref("Statements/try...catch", "try...catch")}}
- Marks a block of statements to try, and specifies a response, should an exception be thrown.
宣告
- {{jsxref("Statements/var", "var")}}
- Declares a variable, optionally initializing it to a value.
- {{jsxref("Statements/let", "let")}}
- Declares a block scope local variable, optionally initializing it to a value.
- {{jsxref("Statements/const", "const")}}
- Declares a read-only named constant.
函數與類別(Class)
- {{jsxref("Statements/function", "function")}}
- 用指定的變數宣告一個函數
- {{jsxref("Statements/function*", "function*")}}
- Generators functions enable writing iterators more easily.
- {{jsxref("Statements/async_function", "async function")}}
- Declares an async function with the specified parameters.
- {{jsxref("Statements/return", "return")}}
- Specifies the value to be returned by a function.
- {{jsxref("Statements/class", "class")}}
- Declares a class.
迭代(Iteration)
- {{jsxref("Statements/do...while", "do...while")}}
- Creates a loop that executes a specified statement until the test condition evaluates to false. The condition is evaluated after executing the statement, resulting in the specified statement executing at least once.
- {{jsxref("Statements/for", "for")}}
- Creates a loop that consists of three optional expressions, enclosed in parentheses and separated by semicolons, followed by a statement executed in the loop.
- {{deprecated_inline}} {{non-standard_inline()}} {{jsxref("Statements/for_each...in", "for each...in")}}
- Iterates a specified variable over all values of object's properties. For each distinct property, a specified statement is executed.
- {{jsxref("Statements/for...in", "for...in")}}
- Iterates over the enumerable properties of an object, in arbitrary order. For each distinct property, statements can be executed.
- {{jsxref("Statements/for...of", "for...of")}}
- Iterates over iterable objects (including {{jsxref("Global_Objects/Array","arrays","","true")}}, array-like objects, iterators and generators), invoking a custom iteration hook with statements to be executed for the value of each distinct property.
- {{jsxref("Statements/while", "while")}}
- Creates a loop that executes a specified statement as long as the test condition evaluates to true. The condition is evaluated before executing the statement.
其他
- {{jsxref("Statements/debugger", "debugger")}}
- Invokes any available debugging functionality. If no debugging functionality is available, this statement has no effect.
- {{jsxref("Statements/export", "export")}}
- Used to export functions to make them available for imports in external modules, another scripts.
- {{jsxref("Statements/import", "import")}}
- Used to import functions exported from an external module, another script.
- {{jsxref("Statements/label", "label")}}
- Provides a statement with an identifier that you can refer to using a
break
or continue
statement.
- {{deprecated_inline}} {{jsxref("Statements/with", "with")}}
- Extends the scope chain for a statement.
規範
技術規格 |
狀態 |
備註 |
{{SpecName('ES1', '#sec-12', 'Statements')}} |
{{Spec2('ES1')}} |
Initial definition |
{{SpecName('ES3', '#sec-12', 'Statements')}} |
{{Spec2('ES3')}} |
|
{{SpecName('ES5.1', '#sec-12', 'Statements')}} |
{{Spec2('ES5.1')}} |
|
{{SpecName('ES6', '#sec-ecmascript-language-statements-and-declarations', 'ECMAScript Language: Statements and Declarations')}} |
{{Spec2('ES6')}} |
New: function*, let, for...of, yield, class |
{{SpecName('ESDraft', '#sec-ecmascript-language-statements-and-declarations', 'ECMAScript Language: Statements and Declarations')}} |
{{Spec2('ESDraft')}} |
|
瀏覽器相容性
{{Compat("javascript.statements")}}
參見