Skip to content

Commit 0e67997

Browse files
committed
fix: 新しい寄付の仕組みを追加し、Iterator Helpersの説明を更新
1 parent 003abe3 commit 0e67997

File tree

1 file changed

+12
-29
lines changed

1 file changed

+12
-29
lines changed

_posts/2025/2025-08-18-jsprimer-v7.md

Lines changed: 12 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ JavaScript Primerスポンサーについては、次のページを参照して
4343
- [JavaScript Primerスポンサー · JavaScript Primer #jsprimer](https://jsprimer.net/intro/sponsors/)
4444

4545
また、ご支援いただいた資金は、jsprimerにcontributionしてくれた方へ還元できるような仕組みを引き続き運用しています。
46+
今回から同じ金額を他のCollective(オープンソースプロジェクト)に寄付する仕組みも追加しました。 Contributorが受け取る代わりに、指定されたCollectiveへ同じ金額を寄付できます。
4647

4748
- [Contributing Expenses Policy](https://github.com/asciidwango/js-primer/blob/master/CONTRIBUTING_EXPENSE.md)
4849

@@ -98,17 +99,16 @@ JavaScript Primer v7.0.0の変更点について紹介します。
9899

99100
### ES2025
100101

101-
- Iterator Helpers(`Iterator.from()`, `.map()`, `.filter()`など)
102+
- Iterator Helpers(`Iterator.from()`, `.take()`, `.map()`など)
103+
- 新章追加([イテレータとジェネレータ](https://jsprimer.net/basic/iterator-generator/)
102104
- [`RegExp.escape`](https://jsprimer.net/basic/string/#regexp-escape)
103105
- [Set Methods](https://jsprimer.net/basic/map-and-set/#set-methods)`.intersection()`, `.union()`, `.difference()`など)
104106
- [Import Attributes](https://jsprimer.net/basic/module/#import-attributes)
105107

106108
### その他
107109

108-
- 新章追加([イテレータとジェネレータ](https://jsprimer.net/basic/iterator-generator/)
109110
- Dynamic Import(ES2020)
110111
- [`Array.prototype.flatMap`](https://jsprimer.net/basic/array/#array-flat-map)(ES2019)
111-
- 環境更新(Node.js 22.18.0)
112112

113113
# [新章: イテレータとジェネレータ](https://github.com/asciidwango/js-primer/pull/1838)
114114

@@ -126,20 +126,19 @@ ES2025で追加されたIterator Helpersを含む、イテレータとジェネ
126126
この章では次の内容をカバーしています。
127127

128128
### イテレータの基礎
129-
- `Symbol.iterator`を使ったイテレータの実装
129+
- `Symbol.iterator`を使ったIterableプロトコルの実装とIteratorプロトコルについて
130130
- `for...of`文での反復処理
131-
- 組み込みのイテレータブルオブジェクト(配列、文字列、Map、Setなど)
131+
- ビルトインオブジェクトとしてのIterableオブジェクト(配列、文字列、Map、Setなど)
132132

133133
### Iterator Helpers (ES2025新機能)
134134
- `Iterator.from()`でイテレータの作成
135-
- `Iterator.prototype`メソッド
135+
- `Iterator.prototype`のメソッド
136136
- `.map()` - 値の変換
137137
- `.filter()` - 値のフィルタリング
138138
- `.take()` - 指定数の要素を取得
139139
- `.drop()` - 指定数の要素をスキップ
140140
- `.flatMap()` - 平坦化しながら変換
141-
- `.forEach()` - 副作用のある処理
142-
- `.reduce()` - 畳み込み演算
141+
- `.reduce()` - reduce
143142
- `.toArray()` - 配列への変換
144143

145144
```javascript
@@ -150,27 +149,6 @@ const array = iterator.toArray();
150149
console.log(array); // => [2, 4, 6]
151150
```
152151

153-
### ジェネレータ関数
154-
- `function*`構文
155-
- `yield`式による値の生成
156-
- 遅延評価により必要な要素のみを逐次生成し、メモリ消費を抑えて大きなデータでも処理可能
157-
- 無限イテレータの実装
158-
159-
```javascript
160-
// ジェネレータ関数の例
161-
function* generatorFunction() {
162-
yield 1; // 最初の値を生成
163-
yield 2; // 次の値を生成
164-
yield 3; // 最後の値を生成
165-
}
166-
167-
const generator = generatorFunction();
168-
console.log(generator.next()); // => { value: 1, done: false }
169-
console.log(generator.next()); // => { value: 2, done: false }
170-
console.log(generator.next()); // => { value: 3, done: false }
171-
console.log(generator.next()); // => { value: undefined, done: true }
172-
```
173-
174152
# [`RegExp.escape`の追加](https://github.com/asciidwango/js-primer/pull/1781)
175153

176154
## 概要
@@ -197,12 +175,17 @@ console.log(escaped); // \+
197175
ES2025でSetに数学的な集合演算を行うメソッドが追加されました。
198176
これにより、複数のSet間の演算が簡潔に書けるようになりました。
199177

178+
200179
## 変更されたページ
201180

202181
- [Map/Set · JavaScript Primer #jsprimer](https://jsprimer.net/basic/map-and-set/#set-methods)
203182

204183
## 追加されたメソッド
205184

185+
![集合演算のイメージ](https://jsprimer.net/basic/map-and-set/set-creation-methods.excalidraw.svg)
186+
187+
![集合演算のイメージ](https://jsprimer.net/basic/map-and-set/set-relation-methods.excalidraw.svg)
188+
206189
```javascript
207190
// Set メソッドの例
208191
const setA = new Set([1, 2, 3, 4, 5]);

0 commit comments

Comments
 (0)