Skip to content

Commit d70b4c2

Browse files
committed
revise errata
1 parent 4ba9256 commit d70b4c2

File tree

1 file changed

+42
-4
lines changed

1 file changed

+42
-4
lines changed

errata.md

+42-4
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,28 @@
11
<!-- markdownlint-disable MD010 MD029 MD032 -->
22
# 『りあクト! TypeScriptで始めるつらくないReact開発 第3版』の正誤表
33

4-
最終更新日: 2021 年 2 月 2
4+
最終更新日: 2021 年 2 月 13
55

66
- 正誤表の内容は随時アップデートされます。
77
- 誤りが判明した部分は、電子版については随時修正が反映された新しいバージョンが配信されます。購入先のサイトをご確認ください。なお現次点での最新版は以下の通りです。
8-
- 【Ⅰ. 言語・環境編】バージョン 1.1.1(2021-01-27
9-
- 【Ⅱ. React 基礎編】バージョン 1.2.0(2021-01-20
10-
- 【Ⅲ. React 応用編】バージョン 1.1.1(2021-02-02
8+
- 【Ⅰ. 言語・環境編】バージョン 1.2.0(2021-02-13
9+
- 【Ⅱ. React 基礎編】バージョン 1.2.1(2021-02-13
10+
- 【Ⅲ. React 応用編】バージョン 1.1.3(2021-02-13
1111
- 本文内の各所で引用している [The State of JavaScript](https://stateofjs.com/) の調査結果およびその説明を、電子版では 2019 から 2020 のものへアップデートしています(2021-01-20)
1212

1313
<br />
1414

1515
### 【Ⅰ. 言語・環境編】
1616

17+
- 1-1 / p.29
18+
該当の拡張がアップデートで別のプロダクトになっていたため差し替え
19+
20+
```diff
21+
- •Bracket Pair Colorizer(coenraads.bracket-pair-colorizer)
22+
+ •Bracket Pair Colorizer 2(CoenraadS.bracket-pair-colorizer-2)
23+
…… マッチする括弧を色分けして教えてくれる
24+
```
25+
1726
- 2-8 / p.105
1827

1928
```diff
@@ -23,6 +32,35 @@
2332
「へー、へー」
2433
```
2534

35+
- 3-2 / p.128-129
36+
「3-2. コレクションの反復処理」「配列の反復処理」項にて、`sort` メソッドが破壊的であることの注意と、JavaScript で破壊的メソッドを非破壊的に運用するための方法の説明を追加
37+
38+
```diff
39+
「そっか、そういう使い方もできるんですね」
40+
+ (ここに以下の文章を追加)
41+
「で、ここまでは必ず値を返す式だったけど、配列の反復処理には値を返さない構文もある。
42+
```
43+
44+
> 「ところで JavaScript の `sort` メソッドはその結果が破壊的という性質があるので、他の処理と組み合わせる際には気をつける必要がある」
45+
>
46+
> ```
47+
> const arr = [12, 2, 3, 24, 5];
48+
> console.log(arr.sort((n, m) => n < m ? -1 : 1)); // [ 2, 3, 5, 12, 24 ]
49+
> console.log(arr); // [ 2, 3, 5, 12, 24 ]
50+
> ```
51+
>
52+
> 「えっ、これやばくないですか? それにこれ見て思いましたけど、JavaScript って破壊的メソッドと非破壊的メソッドが混在してて見分ける方法がないのひどいですね。Ruby なら破壊的メソッドには `sort!` みたいに末尾に `!` がつくのでわかりやすいのに」
53+
> 「うん、例によって歴史的経緯でこうなっちゃってるんだろうね。どれが破壊的でどれが非破壊的なのかは、これはもう丸暗記するしかない。それで JavaScript の配列の破壊的メソッドを非破壊的に使うには裏技があって、`slice` メソッドを間にはさむといいの。`slice()` は本来、配列から任意の範囲をシャローコピーして返してくれるメソッドなんだけど、引数を省略するとその配列全体をコピーしてくれる」
54+
>
55+
> ```
56+
> const arr = [12, 2, 3, 24, 5];
57+
> console.log(arr.slice().sort((n, m) => n < m ? -1 : 1)); // [ 2, 3, 5, 12, 24 ]
58+
> console.log(arr); // [ 12, 2, 3, 24, 5 ]
59+
> ```
60+
>
61+
> 「なるほど。これならそんなに追加のコード量は増えませんし、いいですね。`sort()` を使う際には忘れないようにしないと」
62+
> 「うん、ちょっとめんどうだけどそうしてね。
63+
2664
<br />
2765
2866
### 【Ⅱ. React 基礎編】

0 commit comments

Comments
 (0)