aboutsummaryrefslogtreecommitdiff
path: root/files/ja/glossary/callback_function/index.html
blob: 4d06165ffd9c0359ca28fea7a52a350091965912 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
---
title: Callback function (コールバック関数)
slug: Glossary/Callback_function
tags:
  - Callback
  - Callback function
  - CodingScripting
  - Glossary
translation_of: Glossary/Callback_function
---
<p>コールバック関数は他の関数に引数として渡される関数で、外側の関数で何らかの処理やアクションを実行します。</p>

<p>簡単な例を以下に示します:</p>

<pre class="brush: js">function greeting(name) {
  alert('Hello ' + name);
}

function processUserInput(callback) {
  var name = prompt('Please enter your name.');
  callback(name);
}

processUserInput(greeting);</pre>

<p>上記の例はすぐに実行される {{glossary("synchronous", "同期型")}} コールバックです。</p>

<p>注意として、コールバックは {{glossary("asynchronous", "非同期")}} 命令が完了した後に続いてコードが実行されます — これを非同期コールバックといいます。コールバック関数の良い例は、Promise が成功か失敗した後にチェーンされる <code><a href="/ja/docs/Web/JavaScript/Reference/Global_Objects/Promise/then">.then()</a></code> ブロックの中で実行されるものです。この構造は <code><a href="/ja/docs/Web/API/WindowOrWorkerGlobalScope/fetch">fetch()</a></code>のようなモダンな web API で良く使われています。</p>

<h2 id="Learn_more" name="Learn_more"><strong>詳細情報</strong></h2>

<h3 id="General_knowledge" name="General_knowledge">一般知識</h3>

<ul>
 <li>Wikipedia の {{interwiki("wikipedia", "Callback_(computer_programming)", "コールバック_(情報工学)")}}</li>
</ul>