aboutsummaryrefslogtreecommitdiff
path: root/files
diff options
context:
space:
mode:
authorMasahiro FUJIMOTO <mfujimot@gmail.com>2021-08-30 00:24:16 +0900
committerGitHub <noreply@github.com>2021-08-30 00:24:16 +0900
commit93b4dd6b26fbce6f5e0c88f102da5b38e0289200 (patch)
tree65363c820ba9f265acc9dc8a2707050bdf20a92b /files
parent78e72e01facfaf61aa858851126b7291242186a2 (diff)
downloadtranslated-content-93b4dd6b26fbce6f5e0c88f102da5b38e0289200.tar.gz
translated-content-93b4dd6b26fbce6f5e0c88f102da5b38e0289200.tar.bz2
translated-content-93b4dd6b26fbce6f5e0c88f102da5b38e0289200.zip
Web/JavaScript/Reference/Operators/function* を更新 (#2180)
- Markdown化し、2021/08/21時点の英語版に同期
Diffstat (limited to 'files')
-rw-r--r--files/ja/web/javascript/reference/operators/function_star_/index.html86
-rw-r--r--files/ja/web/javascript/reference/operators/function_star_/index.md73
2 files changed, 73 insertions, 86 deletions
diff --git a/files/ja/web/javascript/reference/operators/function_star_/index.html b/files/ja/web/javascript/reference/operators/function_star_/index.html
deleted file mode 100644
index 3518adf63b..0000000000
--- a/files/ja/web/javascript/reference/operators/function_star_/index.html
+++ /dev/null
@@ -1,86 +0,0 @@
----
-title: function* 式
-slug: Web/JavaScript/Reference/Operators/function*
-tags:
- - ECMAScript6
- - Function
- - Iterator
- - JavaScript
- - Operator
- - Primary Expression
- - 演算子
- - 関数
-translation_of: Web/JavaScript/Reference/Operators/function*
----
-<div>{{jsSidebar("Operators")}}</div>
-
-<p><strong><code>function*</code></strong> キーワードは、式の中でジェネレーター関数を定義するために使用することができます。</p>
-
-<div>{{EmbedInteractiveExample("pages/js/expressions-functionasteriskexpression.html", "taller")}}</div>
-
-<div class="hidden">このデモのソースファイルは GitHub リポジトリに格納されています。デモプロジェクトに協力したい場合は、<a href="https://github.com/mdn/interactive-examples">https://github.com/mdn/interactive-examples</a> をクローンしてプルリクエストを送信してください。</div>
-
-<h2 id="Syntax" name="Syntax">構文</h2>
-
-<pre class="syntaxbox notranslate">function* [<var>name</var>]([<var>param1</var>[, <var>param2[</var>, ..., <var>paramN</var>]]]) {
- <var>statements</var>
-}</pre>
-
-<h3 id="Parameters" name="Parameters">引数</h3>
-
-<dl>
- <dt><code><var>name</var></code> {{optional_inline}}</dt>
- <dd>関数名。省略可。省略した場合、関数は<em>無名関数</em>として認識されます。名前は関数本体のみにローカルです。</dd>
- <dt><code><var>paramN</var></code><var> </var> {{optional_inline}}</dt>
- <dd>関数に渡される引数の名前。関数は最大 255 の引数を持ち得ます。</dd>
- <dt><code><var>statements</var></code></dt>
- <dd>関数の本体を構成するステートメント。</dd>
-</dl>
-
-<h2 id="Description" name="Description">解説</h2>
-
-<p><code>function*</code> 式は {{jsxref('Statements/function*', 'function* 文', "", 1)}}ととてもよく似ており、構文もほとんど同じです。<code>function*</code> 式と <code>function*</code> 文の主な違いは、<code>function*</code> 式で<em>無名</em>ジェネレーター関数を生成するには<em>関数名</em>が省略できる点です。詳細は {{jsxref("Functions", "functions")}} をご覧ください。</p>
-
-<h2 id="Examples" name="Examples">例</h2>
-
-<h3 id="Using_function*" name="Using_function*">function* を使用する</h3>
-
-<p>次の例では、無名ジェネレーター関数を定義し、<code>x</code> に割り当てます。関数は引数の二乗をもたらします:</p>
-
-<pre class="brush: js notranslate">let x = function*(y) {
- yield y * y;
-};
-</pre>
-
-<h2 id="Specifications" name="Specifications">仕様</h2>
-
-<table class="standard-table">
- <thead>
- <tr>
- <th scope="col">仕様書</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>{{SpecName('ESDraft', '#sec-generator-function-definitions', 'function*')}}</td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザーの互換性</h2>
-
-<p>{{Compat("javascript.operators.function_star")}}</p>
-
-<h2 id="See_also" name="See_also">関連情報</h2>
-
-<ul>
- <li>{{jsxref("Statements/function*", "function*")}} 文</li>
- <li>{{jsxref("GeneratorFunction")}} オブジェクト</li>
- <li><a href="/ja/docs/Web/JavaScript/Reference/Iteration_protocols">Iterator プロトコル</a></li>
- <li>{{jsxref("Operators/yield", "yield")}}</li>
- <li>{{jsxref("Operators/yield*", "yield*")}}</li>
- <li>{{jsxref("Function")}} オブジェクト</li>
- <li>{{jsxref("Statements/function", "function")}} 文</li>
- <li>{{jsxref("Operators/function", "function")}} 式</li>
- <li>{{jsxref("Functions_and_function_scope", "関数と関数スコープ", "", 1)}}</li>
-</ul>
diff --git a/files/ja/web/javascript/reference/operators/function_star_/index.md b/files/ja/web/javascript/reference/operators/function_star_/index.md
new file mode 100644
index 0000000000..19a8d1404b
--- /dev/null
+++ b/files/ja/web/javascript/reference/operators/function_star_/index.md
@@ -0,0 +1,73 @@
+---
+title: function* 式
+slug: Web/JavaScript/Reference/Operators/function*
+tags:
+ - ECMAScript 2015
+ - Function
+ - Iterator
+ - JavaScript
+ - Language feature
+ - Operator
+ - Primary Expression
+browser-compat: javascript.operators.generator_function
+translation_of: Web/JavaScript/Reference/Operators/function*
+---
+{{jsSidebar("Operators")}}</div>
+
+**`function*`** キーワードは、式の中でジェネレーター関数を定義するために使用することができます。
+
+{{EmbedInteractiveExample("pages/js/expressions-functionasteriskexpression.html",
+ "taller")}}
+
+## 構文
+
+```js
+function* [name]([param1[, param2[, ..., paramN]]]) {
+ statements
+}
+```
+
+### 引数
+
+- `name` {{optional_inline}}
+ - : 関数名。省略可。省略した場合、関数は*無名関数*として認識されます。名前は関数本体のみにローカルです。
+- `paramN` {{optional_inline}}
+ - : 関数に渡される引数の名前。関数は最大 255 個の引数を持つことができます。
+- `statements`
+ - : 関数の本体を構成する文。
+
+## 解説
+
+`function*` 式は {{jsxref('Statements/function*', 'function* 文', "", 1)}}ととてもよく似ており、構文もほとんど同じです。`function*` 式と `function*` 文の主な違いは、`function*` 式で*無名*ジェネレーター関数を生成する場合は*関数名*が省略できる点です。詳細は {{jsxref("Functions", "functions")}} をご覧ください。
+
+## 例
+
+### function* の使用
+
+次の例では、無名ジェネレーター関数を定義し、`x` に代入します。関数は引数の二乗を生成します。
+
+```js
+let x = function*(y) {
+ yield y * y;
+};
+```
+
+## 仕様書
+
+{{Specifications}}
+
+## ブラウザーの互換性
+
+{{Compat}}
+
+## 関連情報
+
+- {{jsxref("Statements/function*", "function*")}} 文
+- {{jsxref("GeneratorFunction")}} オブジェクト
+- [反復プロトコル](/ja/docs/Web/JavaScript/Reference/Iteration_protocols)
+- {{jsxref("Operators/yield", "yield")}}
+- {{jsxref("Operators/yield*", "yield*")}}
+- {{jsxref("Function")}} オブジェクト
+- {{jsxref("Statements/function", "function")}} 文
+- {{jsxref("Operators/function", "function")}} 式
+- {{jsxref("Functions_and_function_scope", "関数と関数スコープ", "", 1)}}