Skip to content

Commit 74a4949

Browse files
committed
fix samll bugs
1 parent 47d1a55 commit 74a4949

File tree

131 files changed

+3956
-18752
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

131 files changed

+3956
-18752
lines changed

browserenv.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ webpackとRollup以外だと次のようなツールがあります。以下も
4747

4848
* RollupをベースにTypeScriptサポートを最初から組み込んだ\ `microbundle <https://www.npmjs.com/package/microbundle>`_
4949
* .js/.tsの変換に特化して高速なビルド応答性を重視し、本番環境のバンドル作成はプラグインを使ったオプション(webpack/Rollup)としている\ `Snowpack <https://www.snowpack.dev/>`_
50-
* HTMLやCSSのビルドもできて、package.jsonに書かれた定義(mainやtypesなど)をもとにビルドを行い、開発サーバーも全てついてくるオールインワンでビルド速度を重視した\ `Parcel V2<https://v2.parceljs.org/>`_
50+
* HTMLやCSSのビルドもできて、package.jsonに書かれた定義(mainやtypesなど)をもとにビルドを行い、開発サーバーも全てついてくるオールインワンでビルド速度を重視した\ `Parcel V2 <https://v2.parceljs.org/>`_
5151
* Go製でビルド速度に特化した\ `esbuild <https://esbuild.github.io/>`_
5252
* microbundleに似ているが、React/Vue.js/Svelte/Lit-Element/素のHTML+JS(Vanilla)向けの環境構築までやってくれる\ `vite.js <https://vitejs.dev/>`_
5353

browserobjects.rst

+7-2
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,17 @@
1010
Polyfill、Ponyfill
1111
-----------------------------------
1212

13-
``fetch``
13+
``fetch()``
1414
----------------------------------------
1515

16+
Node.js 18からは標準で組み込まれました。2022年10月にLTSになった以降は特に設定せずに利用できます。
17+
18+
クラウドのランタイムなど、それ以前のバージョンを扱う必要があれば追加のパッケージが必要です。
19+
1620
確実にNode.jsだけでしか使われないコードであれば\ `node-fetch <https://www.npmjs.com/package/node-fetch>`_\ をインポートして利用すれば十分です。
1721

18-
もし、ブラウザでもサーバーでも実行されるコードの場合
22+
もし、ブラウザでもサーバーでも実行されるコードを書く必要があれば、次のパッケージを利用すると、Node.js環境ではPolyfillが使われ、ブラウザではネイティブの ``fetch()`` 関数が利用されます。
23+
1924
https://www.npmjs.com/package/isomorphic-unfetch
2025
https://www.npmjs.com/package/isomorphic-fetch
2126
https://www.npmjs.com/package/fetch-ponyfill

conf.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
import sys
2828

2929
sys.path.insert(0, os.path.abspath('ext'))
30-
extensions = [ 'pageinfo', 'sphinx.ext.todo', 'sphinx.ext.githubpages', 'sphinx_rtd_theme' ]
30+
extensions = [ 'pageinfo', 'sphinx.ext.todo', 'sphinx.ext.githubpages', 'sphinx_rtd_theme', 'sphinxcontrib.blockdiag' ]
3131
# The short X.Y version
3232
version = ''
3333
# The full version, including alpha/beta/rc tags

console.rst

+4-4
Original file line numberDiff line numberDiff line change
@@ -28,22 +28,22 @@
2828
- * ``console.log()``
2929
* ✔
3030
* ✔
31-
*
31+
* 標準出力
3232
* ✔
3333
- * ``console.info()``
3434
* ``log()``\ と同じ
3535
* ✔
36-
* ``log()``\ と同じ
36+
* 標準出力
3737
* ✔
3838
- * ``console.warn()``
3939
* ✔
4040
* ✔
41-
* ``log()``\ と同じ
41+
* 標準エラー出力
4242
* ✔
4343
- * ``console.error()``
4444
* ✔
4545
* ✔
46-
* ``log()``\ と同じ
46+
* 標準エラー出力
4747
* ✔
4848

4949
それぞれ、見た目が大きく異なります。

contributors.rst

+1
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ Pull Request/Issueをくださった方々
4646
* `@kesoji <https://github.com/kesoji>`_
4747
* `@maguroguma <https://github.com/maguroguma>`_
4848
* `@nukopy <https://github.com/nukopy>`_
49+
* `@soraiyu <https://github.com/soraiyu>`_
4950

5051

5152
フィードバックをくださった方々

docs/.buildinfo

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
# Sphinx build info version 1
22
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
3-
config: 65f1bc4d6239bd5f9e4ded52b2175125
3+
config: f0ad1fd6c5a0d93275bba3eb765fb7ef
44
tags: 645f666f9bcd5a90fca523b33c5a78b7

docs/_images/vue-cli-3.png

-224 KB
Binary file not shown.

docs/_sources/async.rst.txt

+9-9
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ JavaScriptの処理系には、現在のシステムのUIを担うレイヤー
3030
CPU速度が問題になることはあまりないとはいえ、コードで処理するタスクの中には長い時間の待ちを生じさせるものがいくつかあります。
3131
例えば、タイマーなどもそうですし、外部のサーバーやデータベースへのネットワークアクセス、ローカルのファイルの読み書きなどは往復でミリ秒、場合によっては秒に近い遅延を生じさせます。
3232
JavaScriptは、そのような時間のかかる処理は基本的に「非同期」という仕組みで処理を行います。
33-
タイマー呼び出しをする次のコードを見て見ます
33+
タイマー呼び出しをする次のコードを見てみます
3434

3535
.. code-block:: ts
3636
@@ -137,7 +137,7 @@ TypeScriptでは、 ``async`` を返す関数の返り値は必ず ``Promise``
137137

138138
TypeScriptの処理系は、この ``Promise`` の種類と、関数の返り値の型が同一かどうかを判断し、マッチしなければエラーを出してくれます。
139139
非同期処理の場合、実際に動かしてデバッグしようにも、送る側の値と、受ける側に渡ってくる値が期待通りかどうかを確認するのが簡単ではありません。
140-
ログを出して見ても、実際に実行されるタイミングがかなりずれていることがありえます。
140+
ログを出してみても、実際に実行されるタイミングがかなりずれていることがありえます。
141141
TypeScriptを使うメリットには、このように実際に動かすデバッグが難しいケースでも、型情報を使って「失敗するとわかっている実装」を見つけてくれる点にあります。
142142

143143
比較的新しく作られたライブラリなどは最初から\ ``Promise``\ を返す実装になっていると思いますが、そうでないコールバック関数方式のコードを扱う時は ``new Promise``\ を使って\ ``Promise``\ 化します。
@@ -175,7 +175,7 @@ Node.js標準にもありますし、npmで調べてもたくさんあります
175175

176176
TypeScriptで提供されている ``if`` や ``for`` 、 ``while`` などは関数呼び出しを伴わないフラットなコードなので\ ``await``\ とも一緒に使えます。
177177
``Promise`` やコールバックを使ったコードで、条件によって非同期処理を1つ追加する、というコードを書くのは大変です。
178-
試しに、TypeScriptのPlayGroundで下記のコードを変換してみるとどうなるか見て見ると複雑さにひっくり返るでしょう
178+
試しに、TypeScriptのPlayGroundで下記のコードを変換してみるとどうなるか見てみると複雑さにひっくり返るでしょう
179179

180180
.. code-block:: ts
181181
@@ -222,7 +222,7 @@ TypeScriptで提供されている ``if`` や ``for`` 、 ``while`` などは関
222222

223223
``Promise`` は「時間がかかる仕事が終わった時に通知するという約束」という説明をしました。
224224
みなさんは普段の生活で、時間がかかるタスクというのを行ったことがありますよね?
225-
味噌汁をガスレンジあたためつつ、ご飯を電子レンジで温め、両方終わったらいただきます、という具合です。
225+
味噌汁をガスレンジで温めつつ、ご飯を電子レンジで温め、両方終わったらいただきます、という具合です。
226226
``Promise`` および、その完了を待つ ``await`` を使えば、そのようなタスクも簡単に実装できます。
227227

228228
.. code-block:: ts
@@ -243,8 +243,8 @@ TypeScriptで提供されている ``if`` や ``for`` 、 ``while`` などは関
243243
``味噌汁温め()`` と ``ご飯温め()`` は ``async`` がついた関数です。
244244
省略可能ですがあえて返り値に ``Promise`` をつけています。
245245
これまでの例では、 ``async`` 関数を呼ぶ時には ``await`` をつけていました。
246-
``await`` をつけると、待った後の結果(ここでは味噌汁とご飯のインスタンス)が帰ってきます
247-
``await`` をつけないと、 ``Promise`` そのものが帰ってきます
246+
``await`` をつけると、待った後の結果(ここでは味噌汁とご飯のインスタンス)が返ってきます
247+
``await`` をつけないと、 ``Promise`` そのものが返ってきます
248248

249249
この ``Promise`` の配列を受け取り、全部の ``Promise`` が完了するのを待つのが ``Promise.all()`` です。
250250
``Promise.all()`` は、引数のすべての結果が得られると、解決して結果をリストで返す ``Promise`` を返します。
@@ -256,7 +256,7 @@ TypeScriptで提供されている ``if`` や ``for`` 、 ``while`` などは関
256256
なお、 ``Promise.all()`` の引数の配列に、 ``Promise`` 以外の要素があると、即座に完了する ``Promise`` として扱われます。
257257

258258
類似の関数で ``Promise.race()`` というものがあります。
259-
これは ``all()`` と似ていますが、全部で揃うと実行されるわけではなく、どれか一つでも完了すると呼ばれます。
259+
これは ``all()`` と似ていますが、全部が揃うと実行されるわけではなく、どれか一つでも完了すると呼ばれます。
260260
レスポンスの値は、引数のうちのどれか、ということで、結果を受け取る場合は処理が少し複雑になります。
261261
結果を扱わずに、5秒のアニメーションが完了するか、途中でクリックした場合には画面を更新する、みたいな処理には適しているかもしれません。
262262

@@ -290,14 +290,14 @@ TypeScriptで提供されている ``if`` や ``for`` 、 ``while`` などは関
290290
)
291291
);
292292
293-
図で見て見ると、この違いは一目瞭然でしょう。
293+
図で見てみると、この違いは一目瞭然でしょう。
294294

295295
.. figure:: images/async/loop.png
296296

297297
``Promise.all()`` が適切ではない場面もいくつかあります。
298298

299299
例えば、外部のAPI呼び出しをする場合、たいてい、秒間あたりのアクセス数が制限されています。
300-
配列に100個の要素があるからといって100並列でリクエストを投げるとエラーが帰って来て正常に処理が終了しないこともありえます
300+
配列に100個の要素があるからといって100並列でリクエストを投げるとエラーが返ってきて正常に処理が終了しないこともありえます
301301
その場合は、並列数を制御しつつ ``map()`` と同等のことを実現してくれる ``p-map`` [#]_ といったライブラリを活用すると良いでしょう。
302302

303303
.. [#] https://www.npmjs.com/package/p-map

docs/_sources/baseenv.rst.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -521,10 +521,10 @@ JestでもMochaでも、人気のフレームワークはテスト専用の関
521521
Jestはこのファイルから情報を取得してくれませんので専用の設定が必要です。
522522

523523
.. code-block:: json
524-
524+
:caption: jest.config.js
525525
{
526526
"moduleNameMapper": {
527-
"^@/(.*)$": "<rootDir>/src/$1"
527+
"^@/src/(.*)$": "<rootDir>/src/$1"
528528
}
529529
530530
単なるエイリアスなので、この設定を入れなくてもできることは変わりませんが、特にテストコードからプロジェクトのファイルを参照したい場合など、\ ``import { Targert } from "../../../../src/components/Target";``\ のように\ ``import``\ が長くなる可能性があります。\ ``import``\ 文を他のファイルからコピーするときも、どのフォルダであってもそのまま使えるというメリットもあります。

docs/_sources/browserenv.rst.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ webpackとRollup以外だと次のようなツールがあります。以下も
4747

4848
* RollupをベースにTypeScriptサポートを最初から組み込んだ\ `microbundle <https://www.npmjs.com/package/microbundle>`_
4949
* .js/.tsの変換に特化して高速なビルド応答性を重視し、本番環境のバンドル作成はプラグインを使ったオプション(webpack/Rollup)としている\ `Snowpack <https://www.snowpack.dev/>`_
50-
* HTMLやCSSのビルドもできて、package.jsonに書かれた定義(mainやtypesなど)をもとにビルドを行い、開発サーバーも全てついてくるオールインワンでビルド速度を重視した\ `Parcel V2<https://v2.parceljs.org/>`_
50+
* HTMLやCSSのビルドもできて、package.jsonに書かれた定義(mainやtypesなど)をもとにビルドを行い、開発サーバーも全てついてくるオールインワンでビルド速度を重視した\ `Parcel V2 <https://v2.parceljs.org/>`_
5151
* Go製でビルド速度に特化した\ `esbuild <https://esbuild.github.io/>`_
5252
* microbundleに似ているが、React/Vue.js/Svelte/Lit-Element/素のHTML+JS(Vanilla)向けの環境構築までやってくれる\ `vite.js <https://vitejs.dev/>`_
5353

docs/_sources/browserobjects.rst.txt

+7-2
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,17 @@
1010
Polyfill、Ponyfill
1111
-----------------------------------
1212

13-
``fetch``
13+
``fetch()``
1414
----------------------------------------
1515

16+
Node.js 18からは標準で組み込まれました。2022年10月にLTSになった以降は特に設定せずに利用できます。
17+
18+
クラウドのランタイムなど、それ以前のバージョンを扱う必要があれば追加のパッケージが必要です。
19+
1620
確実にNode.jsだけでしか使われないコードであれば\ `node-fetch <https://www.npmjs.com/package/node-fetch>`_\ をインポートして利用すれば十分です。
1721

18-
もし、ブラウザでもサーバーでも実行されるコードの場合
22+
もし、ブラウザでもサーバーでも実行されるコードを書く必要があれば、次のパッケージを利用すると、Node.js環境ではPolyfillが使われ、ブラウザではネイティブの ``fetch()`` 関数が利用されます。
23+
1924
https://www.npmjs.com/package/isomorphic-unfetch
2025
https://www.npmjs.com/package/isomorphic-fetch
2126
https://www.npmjs.com/package/fetch-ponyfill

docs/_sources/class.rst.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -444,7 +444,7 @@ JavaScriptではまだStage 3の機能ですが、TypeScriptですでに使え
444444
これらの機能は、言語の文化とか、他の代替文法の有無とかで使われ方が大きく変わってきます。
445445

446446
TypeScript界隈では、Angularなどのフレームワークではインタフェースが多用されています。
447-
ユーザーが実装するコンポーネントなどのクラスにおいて、Anguarが提供するサービスを受けるためのメソッドの形式が決まっていて、実装部分の中身をライブラリユーザーが実装するといった使われ方をしています。
447+
ユーザーが実装するコンポーネントなどのクラスにおいて、Angularが提供するサービスを受けるためのメソッドの形式が決まっていて、実装部分の中身をライブラリユーザーが実装するといった使われ方をしています。
448448
``OnInit`` をimplementsすると、初期化時に呼び出されるといった具合です。
449449

450450
継承が必要となるのは実装も提供する必要がある場合ですが、コードが追いかけにくくなるとか、拡張性のあるクラス設計が難しいとかもあり、引き継ぐべきメソッドが大量にあるクラス以外で積極的に使うケースはあまり多くないかもしれません。

docs/_sources/class2.rst.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
アクセッサ
77
--------------------------
88

9-
プロパティのように見えるけど、実際には裏でメソッド呼び出しが行われ、ちょっとした気の利いたをできるようにすることをするのがアクセッサです
9+
プロパティのように見えるけど、実際には裏でメソッド呼び出しが行われ、ちょっとした気の利いたことをできるようにするのがアクセッサです
1010
メンバーのプロパティへの直接操作はさせないが、その読み込み、変更時に処理を挟むといったことが可能です。
1111
登場する概念としては基本的には次の3つです。 ``get`` だけを設定すれば取得のみができる読み込み専用とかもできます。
1212

docs/_sources/clienv.rst.txt

+2-2
Original file line numberDiff line numberDiff line change
@@ -82,15 +82,15 @@ TypeScriptのビルド設定のポイントは、ブラウザからは使わな
8282
このキー名が実行ファイル名になります。
8383

8484
.. code-block:: json
85-
:caption: package.js
85+
:caption: package.json
8686
8787
{
8888
"bin": {
8989
"awesome-cmd": "dist/index.js"
9090
},
9191
"scripts": {
9292
"build": "ncc build main.ts --minify --v8-cache --source-map",
93-
watch": "ncc build main.ts --watch",
93+
"watch": "ncc build main.ts --watch",
9494
"start": "ncc run main.ts",
9595
"lint": "eslint .",
9696
"fix": "eslint --fix ."

docs/_sources/complex.rst.txt

+3-3
Original file line numberDiff line numberDiff line change
@@ -428,7 +428,7 @@ JSON(JavaScript Object Notation)
428428
プレーンテキストであり、書きやすく読みやすい(XMLやSOAPと比べて)こともありますし、JavaScriptでネイティブで扱えるため、API通信で使われるデータフォーマットとしてはトップシェアを誇ります。
429429

430430
JSONをパースすると、オブジェクトと配列で階層構造になったデータができあがります。
431-
通信用のライブラリでは、パース済みの状態でレスポンスが帰ってきたりするため、正確ではないですが、このオブジェクト/配列も便宜上、JSONと呼ぶこともあります。
431+
通信用のライブラリでは、パース済みの状態でレスポンスが返ってきたりするため、正確ではないですが、このオブジェクト/配列も便宜上、JSONと呼ぶこともあります。
432432

433433
.. code-block:: ts
434434
:caption: JSONとオブジェクト
@@ -438,7 +438,7 @@ JSONをパースすると、オブジェクトと配列で階層構造になっ
438438
// 省略可能。通常はnull
439439
// 3つめは配列やオブジェクトでインデントするときのインデント幅
440440
// 省略可能。省略すると改行なしの1行で出力される
441-
const json = JSON.stringfy(smallAnimal, null, 2);
441+
const json = JSON.stringify(smallAnimal, null, 2);
442442
443443
// これは複製されて出てくるので、元のsmallAnimalとは別物
444444
const smallAnimal2 = JSON.parse(json);
@@ -447,7 +447,7 @@ JSONはJavaScript/TypeScriptのオブジェクト定義よりもルールが厳
447447
たとえば、キーは必ずダブルクオートでくくらなければなりませんし、配列やオブジェクトの末尾に不要なカンマがあるとエラーになります。
448448
その場合はJSON.parse()の中で ``SyntaxError`` 例外が発生します。
449449
特に、JSONを便利だからとマスターデータとして使っていて、非プログラマーの人に、編集してもらったりしたときによく発生します。
450-
あとは、JSONレスポンスを期待しているウェブサービスの時に、サーバー側でエラーが発生して、 ``Forbidden`` という文字列が帰ってきた場合(403エラー時のボディ)にも発生します。
450+
あとは、JSONレスポンスを期待しているウェブサービスの時に、サーバー側でエラーが発生して、 ``Forbidden`` という文字列が返ってきた場合(403エラー時のボディ)にも発生します。
451451

452452
.. code-block:: text
453453
:caption: JSONパースのエラー

docs/_sources/console.rst.txt

+4-4
Original file line numberDiff line numberDiff line change
@@ -28,22 +28,22 @@
2828
- * ``console.log()``
2929
* ✔
3030
* ✔
31-
*
31+
* 標準出力
3232
* ✔
3333
- * ``console.info()``
3434
* ``log()``\ と同じ
3535
* ✔
36-
* ``log()``\ と同じ
36+
* 標準出力
3737
* ✔
3838
- * ``console.warn()``
3939
* ✔
4040
* ✔
41-
* ``log()``\ と同じ
41+
* 標準エラー出力
4242
* ✔
4343
- * ``console.error()``
4444
* ✔
4545
* ✔
46-
* ``log()``\ と同じ
46+
* 標準エラー出力
4747
* ✔
4848

4949
それぞれ、見た目が大きく異なります。

docs/_sources/contributors.rst.txt

+1
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ Pull Request/Issueをくださった方々
4646
* `@kesoji <https://github.com/kesoji>`_
4747
* `@maguroguma <https://github.com/maguroguma>`_
4848
* `@nukopy <https://github.com/nukopy>`_
49+
* `@soraiyu <https://github.com/soraiyu>`_
4950

5051

5152
フィードバックをくださった方々

0 commit comments

Comments
 (0)