diff options
Diffstat (limited to 'files/zh-cn/web/javascript/reference/statements/index.html')
| -rw-r--r-- | files/zh-cn/web/javascript/reference/statements/index.html | 150 |
1 files changed, 150 insertions, 0 deletions
diff --git a/files/zh-cn/web/javascript/reference/statements/index.html b/files/zh-cn/web/javascript/reference/statements/index.html new file mode 100644 index 0000000000..c6d70fce55 --- /dev/null +++ b/files/zh-cn/web/javascript/reference/statements/index.html @@ -0,0 +1,150 @@ +--- +title: 语句和声明 +slug: Web/JavaScript/Reference/Statements +tags: + - JavaScript + - 参考 + - 声明 + - 语句和声明 +translation_of: Web/JavaScript/Reference/Statements +--- +<div>{{jsSidebar("Statements")}}</div> + +<p>JavaScript 应用程序是由许多语法正确的语句组成的。单个语句可以跨多行。如果每个语句用分号隔开,那么多个语句可以在一行中出现。本页的内容并不是一个关键字,而是一组关键字。</p> + +<h2 id="语句和声明(按类别分类)">语句和声明(按类别分类)</h2> + +<p>若需要按字母顺序排列的列表,请参阅左侧边栏。</p> + +<h3 id="控制流程"><span class="short_text" id="result_box" lang="zh-CN"><span>控制流程</span></span></h3> + +<dl> + <dt>{{jsxref("Statements/block", "Block")}}</dt> + <dd>一个块语句可以用来管理零个或多个语句。该区块是由一对大括号分隔。</dd> + <dt>{{jsxref("Statements/break", "break")}}</dt> + <dd>终止当前的循环,switch 或 label 语句,使程序跳到下一个语句执行。</dd> + <dt>{{jsxref("Statements/continue", "continue")}}</dt> + <dd>终止执行当前或标签循环的语句,直接执行下一个迭代循环。</dd> + <dt>{{jsxref("Statements/Empty", "Empty")}}</dt> + <dd>空语句用来表示没有语句的情况,尽管 JavaScript 语法期望有语句提供。</dd> + <dt>{{jsxref("Statements/if...else", "if...else")}}</dt> + <dd>如果指定的条件是 true ,则执行相匹配的一个语句,若为 false,则执行另一个语句。</dd> + <dt>{{jsxref("Statements/switch", "switch")}}</dt> + <dd>计算表达式,将子句于表达式的值做匹配,执行与该值相关联的语句。</dd> + <dt>{{jsxref("Statements/throw", "throw")}}</dt> + <dd>抛出一个用户定义的异常。</dd> + <dt>{{jsxref("Statements/try...catch", "try...catch")}}</dt> + <dd>标记一个语句块,并指定一个应该抛出异常的反馈。(Marks a block of statements to try, and specifies a response, should an exception be thrown.)</dd> +</dl> + +<h3 id="声明">声明</h3> + +<dl> + <dt>{{jsxref("Statements/var", "var")}}</dt> + <dd>声明一个变量,可同时将其初始化为一个值。</dd> + <dt>{{jsxref("Statements/let", "let")}}</dt> + <dd>声明一个块级本地变量,可同时将其初始化为一个值。</dd> + <dt>{{jsxref("Statements/const", "const")}}</dt> + <dd>声明一个只读的命名常量。</dd> +</dl> + +<h3 id="函数和类">函数和类</h3> + +<dl> + <dt>{{jsxref("Statements/function", "function")}}</dt> + <dd>声明一个指定参数的函数。</dd> + <dt>{{jsxref("Statements/function*", "function*")}}</dt> + <dd>生成器函数使<a href="/zh-CN/docs/Web/JavaScript/Guide/The_Iterator_protocol">迭代器</a>更容易使用。</dd> + <dt>{{jsxref("Statements/async_function", "async function")}}</dt> + <dd>使用指定的参数声明一个异步函数。</dd> + <dt>{{jsxref("Statements/return", "return")}}</dt> + <dd>指定函数的返回值。</dd> + <dt>{{jsxref("Statements/class", "class")}}</dt> + <dd>声明一个类。</dd> +</dl> + +<h3 id="迭代器">迭代器</h3> + +<dl> + <dt>{{jsxref("Statements/do...while", "do...while")}}</dt> + <dd>创建一个循环来执行语句,直到该语句条件表达式的值为 false。先执行语句,再执行条件表达式,该语句至少会执行一次。</dd> + <dt>{{jsxref("Statements/for", "for")}}</dt> + <dd>创建一个由3个可选的表达式组成的循环,该循环用括号包裹,分号分割,并在循环体中执行语句。</dd> + <dt>{{jsxref("Statements/for...in", "for...in")}}</dt> + <dd>无序遍历对象的可枚举属性。语句针对每个唯一的属性。</dd> + <dt>{{jsxref("Statements/for...of", "for...of")}}</dt> + <dd>遍历可迭代的对象(包括 {{jsxref("Global_Objects/Array","数组")}}、类数组对象、<a href="/zh-CN/docs/JavaScript/Guide/Iterators_and_Generators">迭代器和生成器</a>),对每个不同属性的属性,调用一个自定义的有执行语句的迭代钩子。</dd> + <dt>{{jsxref("Statements/for-await...of", "for await...of")}}</dt> + <dd>在异步可迭代对象、类数组对象、<a href="/zh-CN/docs/JavaScript/Guide/Iterators_and_Generators">迭代器和生成器</a>上迭代,调用自定义迭代钩子,其中包含要为每个不同属性的值执行的语句。</dd> + <dt>{{jsxref("Statements/while", "while")}}</dt> + <dd>创建一个循环语句,循环会一直持续到该语句条件表达式的值为false。先执行条件表达式,然后执行语句。</dd> +</dl> + +<h3 id="其他">其他</h3> + +<dl> + <dt>{{jsxref("Statements/debugger", "debugger")}}</dt> + <dd>调用可用的调试功能。如果没有调试功能可用,该语句不生效。</dd> + <dt>{{jsxref("Statements/export", "export")}}</dt> + <dd>用来导出函数,以便这些函数能够被导入到外部模块或其他脚本中。</dd> + <dt>{{jsxref("Statements/import", "import")}}</dt> + <dd>用来引入外部的模块或另一个script中导出的函数。</dd> + <dt><a href="/zh-CN/docs/Web/JavaScript/Reference/Statements/import.meta"><code>import.meta</code></a></dt> + <dd>向 JavaScript 模块公开上下文特定的元数据的元属性。</dd> + <dt>{{jsxref("Statements/label", "label")}}</dt> + <dd>带标识的语句,与 <code>break</code> 或 <code>continue</code> 语句一起使用。</dd> +</dl> + +<dl> + <dt>{{jsxref("Statements/with", "with")}} {{deprecated_inline}}</dt> + <dd>拓展一个语句的作用域。</dd> +</dl> + +<h2 id="规范">规范</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">规范</th> + <th scope="col">状态</th> + <th scope="col">备注</th> + </tr> + <tr> + <td>{{SpecName('ES1', '#sec-12', 'Statements')}}</td> + <td>{{Spec2('ES1')}}</td> + <td>Initial definition</td> + </tr> + <tr> + <td>{{SpecName('ES3', '#sec-12', 'Statements')}}</td> + <td>{{Spec2('ES3')}}</td> + <td></td> + </tr> + <tr> + <td>{{SpecName('ES5.1', '#sec-12', 'Statements')}}</td> + <td>{{Spec2('ES5.1')}}</td> + <td></td> + </tr> + <tr> + <td>{{SpecName('ES6', '#sec-ecmascript-language-statements-and-declarations', 'ECMAScript Language: Statements and Declarations')}}</td> + <td>{{Spec2('ES6')}}</td> + <td>New: function*, let, for...of, yield, class</td> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-ecmascript-language-statements-and-declarations', 'ECMAScript Language: Statements and Declarations')}}</td> + <td>{{Spec2('ESDraft')}}</td> + <td></td> + </tr> + </tbody> +</table> + +<h2 id="浏览器兼容性">浏览器兼容性</h2> + + + +<p>{{Compat("javascript.statements")}}</p> + +<h2 id="参见">参见</h2> + +<ul> + <li><a href="/zh-CN/docs/Web/JavaScript/Reference/Operators">表达式和操作符</a></li> +</ul> |
