回答編集履歴
3
実例の列挙に「実務では」の文言を追加。
answer
CHANGED
|
@@ -16,7 +16,8 @@
|
|
|
16
16
|
結果:
|
|
17
17
|
[ 2, 10, 41, 999 ]
|
|
18
18
|
```
|
|
19
|
-
期待通りになりました。この`(x,y) => x-y`がコールバック関数です。`function(x,y){return x-y;}`と書いてもいいです。
|
|
19
|
+
期待通りになりました。この`(x,y) => x-y`がコールバック関数です。`function(x,y){return x-y;}`と書いてもいいです。
|
|
20
|
+
実務での例だと、人を表すオブジェクトを生年月日順にソートするとか、役職順にソートするとか。
|
|
20
21
|
`sort()`の仕様は https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array/sort 参照。
|
|
21
22
|
|
|
22
23
|
もう1つは、非同期処理の続きの指定です。「10秒後にこれこれをしたい」というときは、
|
|
@@ -24,6 +25,6 @@
|
|
|
24
25
|
setTimeout(function(){ これこれの処理; }, 10*1000);
|
|
25
26
|
```
|
|
26
27
|
と書きますが、この第一引数がコールバック関数です。
|
|
27
|
-
他には、「これこれのHTTPリクエストを行って、レスポンスが返ったら、そのレスポンスに対してこれこれの処理をしろ」とか、「このボタンがクリックされたらこれこれの処理をしろ」とか多種多様。
|
|
28
|
+
他には、「これこれのHTTPリクエストを行って、レスポンスが返ったら、そのレスポンスに対してこれこれの処理をしろ」とか、「このボタンがクリックされたらこれこれの処理をしろ」とか多種多様。実務ではウェブブラウザ上で動くJavaScriptであれば、多くの処理でこういう場面があります。
|
|
28
29
|
|
|
29
30
|
プログラムの上から下への流れとか、ループや条件判断での処理の流れと別に、「指定時間が経過した時」「サーバーからデータが届いたとき」「ユーザーが何らかの操作をしたとき」などという突然のタイミング(非同期処理)で処理を実行したいとき、その処理関数をあらかじめセットしておくということですね。
|
2
前回補足の微修正
answer
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
初心者がこのサイトで質問してはいけないということではないのですが、特定のプログラムや特定の状況においてどうしたらいいかという質問じゃなくて、入門書に書いてあるレベルの話は、今はAIに聞いた方がいいです。AIと会話することであなたの理解度に合わせて説明してくれます。このサイトだと会話の1つのやり取りに数時間かかったりするわけで時間がかかります(AIの言ってることがわからない場合は、その会話についてこのサイトで質問しましょう)。
|
|
1
|
+
初心者がこのサイトで質問してはいけないということではないのですが、特定のプログラムや特定の状況においてどうしたらいいかという質問じゃなくて、入門書に書いてあるレベルの話は、今はAIに聞いた方がいいです。AIと会話することであなたの理解度に合わせて説明してくれます。このサイトだと会話の1つのやり取りに数時間かかったりするわけで時間がかかります(AIの言ってることがわからない場合orAIの言ってることは間違ってるんじゃないかと思う場合は、その会話についてこのサイトで質問しましょう)。
|
|
2
2
|
|
|
3
3
|
コールバックの例ですが、「汎用の処理に、特定の処理を任せる」ケースが1つ目。
|
|
4
4
|
この例では、「配列要素のソート」という汎用の処理に、「ソートの順は数値の昇順に」という特定の処理を任せます。
|
1
補足追記
answer
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
初心者がこのサイトで質問してはいけないということではないのですが、特定のプログラムや特定の状況においてどうしたらいいかという質問じゃなくて、入門書に書いてあるレベルの話は、今はAIに聞いた方がいいです。AIと会話することであなたの理解度に合わせて説明してくれます。このサイトだと会話の1つのやり取りに数時間かかったりするわけで時間がかかります。
|
|
1
|
+
初心者がこのサイトで質問してはいけないということではないのですが、特定のプログラムや特定の状況においてどうしたらいいかという質問じゃなくて、入門書に書いてあるレベルの話は、今はAIに聞いた方がいいです。AIと会話することであなたの理解度に合わせて説明してくれます。このサイトだと会話の1つのやり取りに数時間かかったりするわけで時間がかかります(AIの言ってることがわからない場合は、その会話についてこのサイトで質問しましょう)。
|
|
2
2
|
|
|
3
3
|
コールバックの例ですが、「汎用の処理に、特定の処理を任せる」ケースが1つ目。
|
|
4
4
|
この例では、「配列要素のソート」という汎用の処理に、「ソートの順は数値の昇順に」という特定の処理を任せます。
|