Skip to content

Commit

Permalink
Merge branch 'main' into rosaceaee
Browse files Browse the repository at this point in the history
  • Loading branch information
rosaceaee authored Aug 4, 2024
2 parents 92bcec0 + 7e01073 commit ef5b3e5
Show file tree
Hide file tree
Showing 528 changed files with 3,128 additions and 1,483 deletions.
3 changes: 2 additions & 1 deletion docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ For guidelines relating to specific locales, we have locale-specific docs in sub
- [Japanese translation guide / 日本語翻訳ガイド](ja/README.md)
- [Korean translation guide / 한국 번역 지침](ko/README.md)

> **Note:** If you want to add a guide to document some specific guidelines for your locale and it does not already appear here, you are welcome to add one, or [talk to the locale teams](https://github.com/mdn/translated-content/blob/main/PEERS_GUIDELINES.md#review-teams) about it.
> [!NOTE]
> If you want to add a guide to document some specific guidelines for your locale and it does not already appear here, you are welcome to add one, or [talk to the locale teams](https://github.com/mdn/translated-content/blob/main/PEERS_GUIDELINES.md#review-teams) about it.
## Do not copy all front matter properties from English pages

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ En caso de querer escapar una comilla o tilde invertida en una plantilla literal

Los caracteres de fin de línea encontrados forman parte de la plantilla literal.

Utilizando cadenas de caracteres normales, sería necesario utilizar la siguiente sintaxes para producir cadenas de más de una línea:
Utilizando cadenas de caracteres normales, sería necesario utilizar la siguiente sintaxis para producir cadenas de más de una línea:

```js
console.log("línea 1 de cadena de texto\n" + "línea 2 de cadena de texto");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ Essayez de mettre à jour le code en direct ci-dessous pour recréer l'exemple t

{{EmbedGHLiveSample("learning-area/html/introduction-to-html/tasks/links/links1.html", '100%', 700)}}

> **Remarque :**
> [!CALLOUT]
>
> [Télécharger les éléments de départ de cette tâche](https://github.com/mdn/learning-area/blob/main/html/introduction-to-html/tasks/links/links1-download.html) pour travailler dans votre propre éditeur ou dans un éditeur en ligne.
Expand All @@ -47,7 +47,7 @@ Essayez de mettre à jour le code en direct ci-dessous pour recréer l'exemple t

{{EmbedGHLiveSample("learning-area/html/introduction-to-html/tasks/links/links2.html", '100%', 800)}}

> **Remarque :**
> [!CALLOUT]
>
> [Télécharger les éléments de départ de cette tâche](https://github.com/mdn/learning-area/blob/main/html/introduction-to-html/tasks/links/links2-download.html) pour travailler dans votre propre éditeur ou dans un éditeur en ligne.
Expand All @@ -64,6 +64,6 @@ Essayez de mettre à jour le code en direct ci-dessous pour recréer l'exemple t

{{EmbedGHLiveSample("learning-area/html/introduction-to-html/tasks/links/links3.html", '100%', 700)}}

> **Remarque :**
> [!CALLOUT]
>
> [Télécharger les éléments de départ de cette tâche](https://github.com/mdn/learning-area/blob/main/html/introduction-to-html/tasks/links/links3-download.html) pour travailler dans votre propre éditeur ou dans un éditeur en ligne.
2 changes: 1 addition & 1 deletion files/fr/learn/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ Le but de cette section de MDN n'est pas de vous faire passer de « débuta

Si vous débutez complètement, le développement web peut être un réel défi : notre but est de simplifier suffisamment le sujet pour que vous appreniez facilement, tout en vous fournissant assez de détails pour que vous soyez autonome. Vous devriez vous sentir chez vous, que vous soyez étudiant·e apprenant le développement web (de votre propre gré ou dans le cadre de vos études), un·e enseignant·e recherchant des supports de cours, une amatrice ou un amateur ou encore quelqu'un qui souhaite simplement comprendre comment fonctionnent le Web et ses technologies.

> **Remarque :**
> [!CALLOUT]
>
> Vous voulez devenir développeuse ou développeur web front-end ?
>
Expand Down
4 changes: 2 additions & 2 deletions files/fr/learn/javascript/asynchronous/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ slug: Learn/JavaScript/Asynchronous

Dans ce module, nous examinons le [JavaScript](/fr/docs/Glossary/JavaScript) [asynchrone](/fr/docs/Glossary/Asynchronous), pourquoi il est important et comment il peut être utilisé afin de gérer efficacement les opérations potentiellement bloquantes telles que la récupération de ressources sur un serveur.

> **Remarque :**
> [!CALLOUT]
>
> #### Vous cherchez à devenir développeuse ou développeur web front-end ?
> Vous cherchez à devenir développeuse ou développeur web front-end ?
>
> Nous avons élaboré un cours qui comprend toutes les informations essentielles dont vous avez besoin pour atteindre votre objectif.
>
Expand Down
4 changes: 2 additions & 2 deletions files/fr/learn/javascript/objects/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@ l10n:

En JavaScript, la plupart des valeurs manipulées sont des objets, qu'ils proviennent des fonctionnalités natives du langage, comme les tableaux, ou qu'ils soient fournis par les API du navigateur. Il est aussi possible de créer ses propres objets qui contiendront des propriétés avec des données ou des fonctions. JavaScript est un langage orienté objet et la compréhension de cette notion est nécessaire pour approfondir ses connaissances dans ce langage. Nous avons donc construit un module pour vous aider, où nous vous apprendrons la théorie du modèle objet et les détails de la syntaxe JavaScript associée. Nous verrons ensuite comment créer ses propres objets.

> **Remarque :**
> [!CALLOUT]
>
> #### Vous souhaitez devenir développeuse ou développeur web ?
> Vous souhaitez devenir développeuse ou développeur web ?
>
> Nous avons construit un cursus contenant toutes les informations essentielles pour parvenir à cet objectif.
>
Expand Down
2 changes: 1 addition & 1 deletion files/fr/learn/tools_and_testing/github/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Les systèmes de contrôle des versions fournissent des outils pour répondre à

> **Note :** Git est en fait un système de contrôle des versions _distribué_, signifiant qu'une copie complète du dépôt contenant la base de code est fait sur votre ordinateur (et celui de tous les autres participants). Vous modifiez votre propre copie et puis vous les envoyez vers le serveur, où un administrateur pourra décider de les fusionner avec la copie commune ou non.
> **Remarque :**
> [!CALLOUT]
>
> Vous cherchez à devenir un développeur web front-end ?
>
Expand Down
2 changes: 1 addition & 1 deletion files/fr/web/css/reference/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ Les combinateurs sont des sélecteurs qui établissent une relation entre deux s
- [Pseudo-éléments](/fr/docs/Web/CSS/Pseudo-elements) `::`
- : Représente des entités qui ne sont pas incluses en HTML.

> **Remarque :**
> [!CALLOUT]
>
> See also [Selectors in the Selectors Level 4 specification](https://www.w3.org/TR/selectors/#overview).
Expand Down
4 changes: 2 additions & 2 deletions files/fr/web/html/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,9 @@ Les articles suivants fournissent des éléments de référence utiles au dével
- Référence HTML
- : Dans notre [référence exhaustive](/fr/docs/Web/HTML/Reference), vous trouverez le détail de chaque élément et attribut constituant HTML.

> **Remarque :**
> [!CALLOUT]
>
> #### Vous cherchez à devenir un développeur web front-end ?
> Vous cherchez à devenir un développeur web front-end ?
>
> Nous avons élaboré un cours qui comprend toutes les informations essentielles dont vous avez besoin pour atteindre votre objectif.
>
Expand Down
1 change: 1 addition & 0 deletions files/ja/_redirects.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2746,6 +2746,7 @@
/ja/docs/Web/API/Element/pointerlockchange_event /ja/docs/Web/API/Document/pointerlockchange_event
/ja/docs/Web/API/Element/pointerlockerror_event /ja/docs/Web/API/Document/pointerlockerror_event
/ja/docs/Web/API/Element/select_event /ja/docs/Web/API/HTMLInputElement/select_event
/ja/docs/Web/API/Element/setHTML /ja/docs/Web/API/Element
/ja/docs/Web/API/Element/show_event /ja/docs/orphaned/Web/API/Element/show_event
/ja/docs/Web/API/Event/Comparison_of_Event_Targets /ja/docs/Learn/JavaScript/Building_blocks/Event_bubbling
/ja/docs/Web/API/Event/button /ja/docs/Web/API/MouseEvent/button
Expand Down
29 changes: 16 additions & 13 deletions files/ja/glossary/callback_function/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,27 +7,30 @@ l10n:

{{GlossarySidebar}}

コールバック関数とは、引数として他の関数に渡され、外側の関数の中で呼び出されて、何らかのルーチンやアクションを完了させる関数のことです。
**コールバック関数**、引数として他の関数に渡され、外側の関数の中で呼び出されて、何らかのルーチンやアクションを完了させる関数のことです。

簡単な例を以下に示します。
コールバックベースの API の利用者は、API に渡す関数を書きます。API の提供者(_caller_ と呼ばれる)は関数を受け取り、呼び出し側の本体内のある時点で関数をコールバック(実行)します。呼び出し側はコールバック関数に正しい引数を渡す責任があります。また、呼び出し側はコールバック関数からの特定のな返値を期待することがあり、呼び出し側のさらなる動作を指示するために使用します。

コールバックの呼び出され方には、同期コールバックと非同期コールバックの 2 つの方法があります。同期コールバックは、外部関数の呼び出しの直後に呼び出され、非同期タスクは介在しません。一方、非同期コールバックは、{{glossary("asynchronous", "非同期")}}処理が完了した後のある時点で呼び出されます。

コールバックが同期的に呼び出されるのか、非同期的に呼び出されるのかを理解することは、 副作用を分析する際に具体的な意味があります。次の例を見てください。

```js
function greeting(name) {
alert(`Hello, ${name}`);
}
let value = 1;

function processUserInput(callback) {
const name = prompt("Please enter your name.");
callback(name);
}
doSomething(() => {
value = 2;
});

processUserInput(greeting);
console.log(value);
```

上記の例はすぐに実行される{{glossary("synchronous", "同期型")}}コールバックです。
もし `doSomething` がコールバックを同期的に呼び出すのであれば、`value = 2` が同期的に実行されるので、最後の文は `2` をログ出力します。もしコールバックが非同期的であれば、`value = 2` が実行されるのは `console.log` 文の後なので、最後の文は `1` をログ出力します。

同期コールバックの例としては、{{jsxref("Array.prototype.map()")}} や {{jsxref("Array.prototype.forEach()")}} などに渡されるコールバックが挙げられます。非同期コールバックの例としては、[`setTimeout()`](/ja/docs/Web/API/setTimeout) や {{jsxref("Promise.prototype.then()")}} に渡すコールバックがあります。

コールバックは{{glossary("asynchronous", "非同期")}}操作が完了した後に続いてコードが実行されることがよくあります。これを非同期コールバックといいます。コールバック関数の良い例は、プロミスが履行されたり拒否されたりした後に連鎖される [`.then()`](/ja/docs/Web/JavaScript/Reference/Global_Objects/Promise/then) ブロックの中で実行されるものです。この構造は [`fetch()`](/ja/docs/Web/API/fetch)のような最近の Web API で良く使われています
[プロミスの使用](/ja/docs/Web/JavaScript/Guide/Using_promises#タイミング)ガイドには、非同期コールバックのタイミングについての詳しい情報があります

## 関連情報

- Wikipedia の[コールバック](<https://ja.wikipedia.org/wiki/コールバック_(情報工学)>)
- [コールバック](<https://ja.wikipedia.org/wiki/コールバック_(情報工学)>)(ウィキペディア)
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,7 @@ Host: foo.com
</form>
```

フォームをが `POST` メソッドで送信されると、URL にはデータが追加されず、HTTP リクエストは次のように、リクエスト本文にデータが含まれた形になります。
フォームが `POST` メソッドで送信されると、URL にはデータが追加されず、HTTP リクエストは次のように、リクエスト本文にデータが含まれた形になります。

```http
POST / HTTP/2.0
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: クライアント側ストレージ
slug: Learn/JavaScript/Client-side_web_APIs/Client-side_storage
l10n:
sourceCommit: 1b094710cd2816a6669ce616b6f56d0a5b25e6ad
sourceCommit: bc0d0d1ef796435e969f6d65c7e5d3c08f4023aa
---

{{LearnSidebar}}
Expand All @@ -28,9 +28,9 @@ l10n:
</td>
</tr>
<tr>
<th scope="row">目標:</th>
<th scope="row">目的:</th>
<td>
アプリケーションデータを格納するために、クライアント側ストレージ API を使用する方法について学ぶ
アプリケーションデータを格納するために、クライアント側ストレージ API を使用する方法について学ぶこと
</td>
</tr>
</tbody>
Expand Down Expand Up @@ -585,9 +585,9 @@ function deleteItem(e) {
}
```

3. 以下のスニペットは、`fetchVideoFromNetwork()` 内から引用したものです。ここでは、2 つの別々の {{domxref("fetch()")}} 要求を用いて MP4 版と WebM 版の動画を読み込んでいます。次に {{domxref("Response.blob()")}} メソッドを使用してそれぞれのレスポンスの本文を blob として抽出し、後で格納したり表示したりできる動画のオブジェクト表現を得ています。
3. 以下のスニペットは、`fetchVideoFromNetwork()` 内から引用したものです。ここでは、2 つの別々の {{domxref("Window/fetch", "fetch()")}} リクエストを用いて MP4 版と WebM 版の動画を読み込んでいます。次に {{domxref("Response.blob()")}} メソッドを使用してそれぞれのレスポンスの本文を blob として抽出し、後で格納したり表示したりできる動画のオブジェクト表現を得ています。

しかし、ここで問題があります。これらの二つの要求はどちらも非同期的なのですが、双方のプロミスが履行された (fulfilled) 場合にだけ動画を表示もしくは保存しようと試みたいのです。幸い、そうした問題を扱う組み込みメソッドがあります。すなわち {{jsxref("Promise.all()")}} です。これは一つの引数 — 成立したかどうかを調べたい個々のプロミスすべてに対する参照を配列に入れたもの — をとり、これ自体がプロミスに基づいています。
しかし、ここで問題があります。これらの 2 つのリクエストはどちらも非同期的なのですが、双方のプロミスが履行された (fulfilled) 場合にだけ動画を表示もしくは保存しようと試みたいのです。幸い、そうした問題を扱う組み込みメソッドがあります。すなわち {{jsxref("Promise.all()")}} です。これは一つの引数 — 成立したかどうかを調べたい個々のプロミスすべてに対する参照を配列に入れたもの — をとり、これ自体がプロミスに基づいています。

このプロミスの `then()` ハンドラー内で、先ほどと同様に `displayVideo()` 関数を呼び出して動画を UI に表示し、さらに `storeVideo()` 関数を呼び出して動画をデータベース内に格納しています。

Expand Down Expand Up @@ -737,7 +737,7 @@ self.addEventListener("install", (e) => {

このブロックの中では {{domxref("CacheStorage.match()")}} を使用して、一致するリクエスト(すなわち URL に一致する)がいずれかのキャッシュで得られるかどうかを調べています。このプロミスは、一致するものが得られた場合は一致するレスポンスで履行され、そうでない場合は `undefined` となります。

一致するものが見つかった場合、それを独自のレスポンスとして返します。そうでない場合は、ネットワークからのレスポンスを [fetch()](/ja/docs/Web/API/fetch) して、代わりにそれを返します。
一致するものが見つかった場合、それを独自のレスポンスとして返します。そうでない場合は、ネットワークからのレスポンスを [fetch()](/ja/docs/Web/API/Window/fetch) して、代わりにそれを返します。

```js
self.addEventListener("fetch", (e) => {
Expand All @@ -764,7 +764,7 @@ self.addEventListener("fetch", (e) => {

## まとめ

これで終わりです。クライアント側での保存の技術についてのこの概要を、皆さんが有用だと思ってくださったのであれば良いな、と望んでいます
これで終わりです。クライアント側ストレージ技術の概要が有益なものであったことを期待しています

## 関連情報

Expand Down
Loading

0 comments on commit ef5b3e5

Please sign in to comment.