aboutsummaryrefslogtreecommitdiff
path: root/files
diff options
context:
space:
mode:
Diffstat (limited to 'files')
-rw-r--r--files/ja/web/javascript/reference/deprecated_and_obsolete_features/the_legacy_iterator_protocol/index.md54
1 files changed, 21 insertions, 33 deletions
diff --git a/files/ja/web/javascript/reference/deprecated_and_obsolete_features/the_legacy_iterator_protocol/index.md b/files/ja/web/javascript/reference/deprecated_and_obsolete_features/the_legacy_iterator_protocol/index.md
index b4148651b5..d3585d4ada 100644
--- a/files/ja/web/javascript/reference/deprecated_and_obsolete_features/the_legacy_iterator_protocol/index.md
+++ b/files/ja/web/javascript/reference/deprecated_and_obsolete_features/the_legacy_iterator_protocol/index.md
@@ -4,50 +4,40 @@ slug: >-
Web/JavaScript/Reference/Deprecated_and_obsolete_features/The_legacy_Iterator_protocol
tags:
- ES2015
- - Guide
+ - ガイド
- JavaScript
- - Legacy Iterator
+ - 古いイテレーター
translation_of: >-
Web/JavaScript/Reference/Deprecated_and_obsolete_features/The_legacy_Iterator_protocol
---
-<div>{{jsSidebar("More")}}</div>
+{{jsSidebar("More")}}
-<div class="warning"><strong>標準外です。</strong> 古いイテレータープロトコルは SpiderMonkey 固有の機能で、 Firefox 58 で削除されました。将来に向けた使用では、 <a href="/ja/docs/Web/JavaScript/Reference/Statements/for...of">for..of</a> ループと <a href="/ja/docs/Web/JavaScript/Reference/Iteration_protocols">反復処理プロトコル</a> を使用することを検討してください。</div>
+> **Warning:** 古いイテレータープロトコルは SpiderMonkey 固有の機能で、 Firefox 58 で削除されました。将来に向けた使用では、 [for..of](/ja/docs/Web/JavaScript/Reference/Statements/for...of) ループと[反復処理プロトコル](/ja/docs/Web/JavaScript/Reference/Iteration_protocols)を使用することを検討してください。
-<h2 id="The_deprecated_Firefox-only_iterator_protocol">非推奨の Firefox 専用イテレータープロトコル</h2>
+## 非推奨の Firefox 専用イテレータープロトコル
-<p>Firefox version 26 以前は、標準の <a href="/ja/docs/Web/JavaScript/Reference/Iteration_protocols">ES2015 のイテレータープロトコル</a>に似た別のイテレータープロトコルを実装していました。</p>
+Firefox version 26 以前は、標準の [ES2015 のイテレータープロトコル](/ja/docs/Web/JavaScript/Reference/Iteration_protocols)に似た別のイテレータープロトコルを実装していました。
-<p>オブジェクトが次のセマンティックスをもつ <code>next()</code> メソッドを実装している場合、そのオブジェクトは古いイテレーターで、反復処理の最後に {{jsxref("Global_Objects/StopIteration", "StopIteration")}} をスローします。</p>
+オブジェクトが次の意味をもつ `next()` メソッドを実装している場合、そのオブジェクトは古いイテレーターで、反復処理の最後に {{jsxref("Global_Objects/StopIteration", "StopIteration")}} をスローします。
-<table class="standard-table">
- <tbody>
- <tr>
- <th scope="col">プロパティ</th>
- <th scope="col">値</th>
- </tr>
- <tr>
- <td><code>next</code></td>
- <td>引数なしの関数で、値を返します。</td>
- </tr>
- </tbody>
-</table>
+| プロパティ |値 |
+| -------- | ------------------------------------------------ |
+| `next` | 引数なしの関数で、値を返します。 |
-<h3 id="Difference_between_legacy_and_ES2015_iterator_protocols">古いイテレータープロトコルと ES2015 イテレータープロトコルとの違い</h3>
+### 古いイテレータープロトコルと ES2015 イテレータープロトコルとの違い
-<ul>
- <li>値はプレイスホルダーオブジェクトの <code>value</code> プロパティではなく、 <code>next</code> の呼び出しの返値として直接値が返されていました。</li>
- <li>反復処理の終了は {{jsxref("Global_Objects/StopIteration", "StopIteration")}} オブジェクトをスローすることで表現されていました。</li>
-</ul>
+- 値はプレイスホルダーオブジェクトの `value` プロパティではなく、 `next` の呼び出しの返値として直接値が返されていました。
+- 反復処理の終了は {{jsxref("Global_Objects/StopIteration", "StopIteration")}} オブジェクトをスローすることで表現されていました。
-<h3 id="Simple_example_with_the_old_protocol">古いプロトコルをもつ簡単な例</h3>
+### 古いプロトコルをもつ簡単な例
-<pre class="brush: js">function makeIterator(array){
+```js
+function makeIterator(array){
var nextIndex = 0;
return {
next: function(){
- if(nextIndex &lt; array.length){
+ if(nextIndex < array.length){
return array[nextIndex++];
else
throw new StopIteration();
@@ -67,11 +57,9 @@ catch(e){
// iteration over
}
}
-</pre>
+```
-<h2 id="See_also">関連情報</h2>
+## 関連情報
-<ul>
- <li><a href="/ja/docs/Web/JavaScript/Guide/Iterators_and_Generators">イテレーターとジェネレーター</a></li>
- <li>More <a href="/ja/docs/Web/JavaScript/Reference/Deprecated_and_obsolete_features">非推奨の機能、廃止された機能</a></li>
-</ul>
+- [イテレーターとジェネレーター](/ja/docs/Web/JavaScript/Guide/Iterators_and_Generators)
+- 他の[非推奨の機能、廃止された機能](/ja/docs/Web/JavaScript/Reference/Deprecated_and_obsolete_features)