Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(jsxref): make $3 a number for all invocations #20146

Merged
merged 1 commit into from
May 27, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion files/es/web/javascript/guide/grammar_and_types/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ console.log(n * 32); // Registrará 0 en la consola

Cuando declaras una variable fuera de cualquier función, se denomina variable _global_, porque está disponible para cualquier otro código en el documento actual. Cuando declaras una variable dentro de una función, se llama variable _local_, porque solo está disponible dentro de esa función.

JavaScript anterior a ECMAScript 2015 no tiene el ámbito de la {{JSxRef("Guide/Control_de_flujo_y_manejo_de_errores", "declaración de bloque", "#Block_statement", "Checar")}}. Más bien, una variable declarada dentro de un bloque es local a la _función (o ámbito global)_ en el que reside el bloque.
JavaScript anterior a ECMAScript 2015 no tiene el ámbito de la {{jsxref("Guide/Control_de_flujo_y_manejo_de_errores", "declaración de bloque", "#Block_statement", 1)}}. Más bien, una variable declarada dentro de un bloque es local a la _función (o ámbito global)_ en el que reside el bloque.

Por ejemplo, el siguiente código registrará `5`, porque el ámbito de `x` es el contexto global (o el contexto de la función si el código es parte de una función). El ámbito de `x` no se limita al bloque de instrucciones `if` inmediato.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ console.log(it.next().done); // true

## Generadores

Aunque los iteradores personalizados son una herramienta útil, su creación require una programación meticulosa ya que necesitan mantener su estado interno explícitamente. Los **{{jsxref("Objetos_globales/Generador","generadores","","true")}}** son una alternativa poderosa: permiten definir un algoritmo iterativo al escribir una sola función que puede mantener su propio estado.
Aunque los iteradores personalizados son una herramienta útil, su creación require una programación meticulosa ya que necesitan mantener su estado interno explícitamente. Los **{{jsxref("Objetos_globales/Generador","generadores","",1)}}** son una alternativa poderosa: permiten definir un algoritmo iterativo al escribir una sola función que puede mantener su propio estado.

Una función generadora (constructor GeneratorFunction) es un tipo especial de función que sirve como una fábrica de iteradores. Cuando se ejecuta, regresa un nuevo objeto Generador. Una función se convierte en una Función Generadora si utiliza la sintáxis {{jsxref("Sentencias/function*","function*")}}.

Expand Down Expand Up @@ -110,7 +110,7 @@ for (let valor of miIterable) {

### Sintaxis que esperan objetos iterables

Algunas sentencias y expresiones esperan objetos iterables, por ejemplo los bucles {{jsxref("Sentencias/for...of","for-of")}}, {{jsxref("Operadores/Spread_operator","el operador de propagación")}}, {{jsxref("Operadores/yield*","yield*")}}, y {{jsxref("Operadores/Destructuring_assignment","la asignación por desestructuración","","true")}}.
Algunas sentencias y expresiones esperan objetos iterables, por ejemplo los bucles {{jsxref("Sentencias/for...of","for-of")}}, {{jsxref("Operadores/Spread_operator","el operador de propagación")}}, {{jsxref("Operadores/yield*","yield*")}}, y {{jsxref("Operadores/Destructuring_assignment","la asignación por desestructuración","",1)}}.

```js
for (let valor of ["a", "b", "c"]) {
Expand Down
2 changes: 1 addition & 1 deletion files/es/web/javascript/guide/meta_programming/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ Hay ejemplos adicionales disponibles en la página de referencia {{jsxref("Proxy

Los siguientes términos se utilizan cuando se habla de la funcionalidad de los proxies.

- {{jsxref("Global_Objects/Proxy/handler","handler","","true")}}
- {{jsxref("Global_Objects/Proxy/handler","handler","",1)}}
- : Objeto marcador de posición que contiene trampas.
- traps
- : Los métodos que proporcionan acceso a la propiedad. (Esto es análogo al concepto de _trampas_ en los sistemas operativos).
Expand Down
2 changes: 1 addition & 1 deletion files/fr/glossary/simd/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,5 @@ Voir aussi {{Glossary("SISD")}} qui est une architecture séquentielle sans para

### Culture générale

- {{jsxref("Objets_globaux/SIMD","SIMD en JavaScript","","true")}}
- {{jsxref("Objets_globaux/SIMD","SIMD en JavaScript","",1)}}
- [SIMD](https://fr.wikipedia.org/wiki/Single_instruction_multiple_data) sur Wikipédia
4 changes: 2 additions & 2 deletions files/fr/web/javascript/guide/meta_programming/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ Ici, l'objet `Proxy` définit une `cible` (ici c'est un objet vide) et un gestio

Lorsqu'on utilise les proxies et leurs fonctionnalités, on utilisera les termes suivants :

- {{jsxref("Objets_globaux/Proxy/handler","gestionnaire (handler)","","true")}}
- {{jsxref("Objets_globaux/Proxy/handler","gestionnaire (handler)","",1)}}
- : L'objet qui contient les trappes.
- trappes
- : Les méthodes qui fournissent l'accès aux propriétés. Ce concept est analogue aux trappes utilisées dans les systèmes d'exploitations.
Expand Down Expand Up @@ -379,7 +379,7 @@ typeof proxy; // "object", typeof ne déclenche aucune trappe

## Réflexion

{{jsxref("Reflect")}} est un objet natif qui fournit des méthodes pour les opérations JavaScript qui peuvent être interceptées. Ces méthodes sont les mêmes que celles gérées par les {{jsxref("Objets_globaux/Proxy/handler","gestionnaires de proxy","","true")}}. `Reflect` n'est pas un constructeur et ne peut pas être utilisé comme une fonction !
{{jsxref("Reflect")}} est un objet natif qui fournit des méthodes pour les opérations JavaScript qui peuvent être interceptées. Ces méthodes sont les mêmes que celles gérées par les {{jsxref("Objets_globaux/Proxy/handler","gestionnaires de proxy","",1)}}. `Reflect` n'est pas un constructeur et ne peut pas être utilisé comme une fonction !

`Reflect` aide à transférer les opérations par défaut depuis le gestionnaire vers la cible.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ function estAssezGrand(element, index, array) {

### Utiliser les fonctions fléchées avec `every`

{{jsxref("Fonctions/Fonctions_fléchées","Les fonctions fléchées","","1")}} permettent d'utiliser une syntaxe plus concise pour effectuer le même test.
{{jsxref("Fonctions/Fonctions_fléchées","Les fonctions fléchées","",1)}} permettent d'utiliser une syntaxe plus concise pour effectuer le même test.

```js
[12, 5, 8, 130, 44].every((elem) => elem >= 10); // false
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,4 +58,4 @@ var x = function* (y) {
- L'objet {{jsxref("Function")}}
- L'instruction {{jsxref("Instructions/function", "function")}}
- L'expression {{jsxref("Opérateurs/L_opérateur_function", "function")}}
- {{jsxref("Fonctions", "Fonctions et portée des fonctions","","1")}}
- {{jsxref("Fonctions", "Fonctions et portée des fonctions","",1)}}
2 changes: 1 addition & 1 deletion files/ja/mozilla/firefox/releases/65/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ _変更なし。_
### JavaScript

- {{jsxref("RelativeTimeFormat", "Intl.RelativeTimeFormat")}} をサポートしました ([Firefox バグ 1504334](https://bugzil.la/1504334))。
- 文字列の {{jsxref("String/length","length","","1")}} の最大値を `2**28 - 1` (\~256MB) から `2**30 - 2` (\~1GB) に変更しました ([Firefox バグ 1509542](https://bugzil.la/1509542))。
- 文字列の {{jsxref("String/length","length","",1)}} の最大値を `2**28 - 1` (\~256MB) から `2**30 - 2` (\~1GB) に変更しました ([Firefox バグ 1509542](https://bugzil.la/1509542))。
- 常にトップレベルのグローバルオブジェクトを参照する {{jsxref("globalThis")}} プロパティを実装しました ([Firefox バグ 1317422](https://bugzil.la/1317422))。

### API
Expand Down
2 changes: 1 addition & 1 deletion files/ja/web/api/xmlhttprequest_api/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ l10n:

**XMLHttpRequest API** を使用すことで、ウェブアプリケーションがウェブサーバーに HTTP リクエストを行い、JavaScript を使用してプログラムでレスポンスを受け取ることができます。これによりウェブサイトは、新しいページに移動することなく、サーバーからのデータでページの一部だけを更新することができます。この方法は、 {{glossary("Ajax")}} としても知られています。

[フェッチ API](/ja/docs/Web/API/Fetch_API) は XMLHttpRequest API をより柔軟で強力に置き換えたものです。フェッチ API は、非同期レスポンスを処理するためにイベントの代わりに{{jsxref("Promise", "プロミス", "", "nocode")}}を使用し、[サービスワーカー](/ja/docs/Web/API/Service_Worker_API)とうまく統合し、 [CORS](/ja/docs/Web/HTTP/CORS) のような HTTP の高度な側面に対応しています。これらの理由から、現代のウェブアプリケーションでは、{{domxref("XMLHttpRequest")}} の代わりにフェッチ API を使用するのが一般的です。
[フェッチ API](/ja/docs/Web/API/Fetch_API) は XMLHttpRequest API をより柔軟で強力に置き換えたものです。フェッチ API は、非同期レスポンスを処理するためにイベントの代わりに{{jsxref("Promise", "プロミス", "", 1)}}を使用し、[サービスワーカー](/ja/docs/Web/API/Service_Worker_API)とうまく統合し、 [CORS](/ja/docs/Web/HTTP/CORS) のような HTTP の高度な側面に対応しています。これらの理由から、現代のウェブアプリケーションでは、{{domxref("XMLHttpRequest")}} の代わりにフェッチ API を使用するのが一般的です。

## 概念と使用方法

Expand Down
2 changes: 1 addition & 1 deletion files/ja/web/javascript/guide/functions/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -679,7 +679,7 @@ JavaScript には、定義済みの最上位関数がいくつかあります。
- {{jsxref("Global_Objects/eval", "eval()")}}
- : **`eval()`** メソッドは文字列として書き表された JavaScript のコードを評価します。
- {{jsxref("Global_Objects/uneval", "uneval()")}}
- : **`uneval()`** メソッドは{{jsxref("Object","オブジェクト","","true")}}のソースコードを表す文字列を生成します。
- : **`uneval()`** メソッドは{{jsxref("Object","オブジェクト","",1)}}のソースコードを表す文字列を生成します。
- {{jsxref("Global_Objects/isFinite", "isFinite()")}}
- : このグローバル関数 **`isFinite()`** は渡された値が有限数であるかを判定します。必要であれば、引数は初めに数値へと変換されます。
- {{jsxref("Global_Objects/isNaN", "isNaN()")}}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ slug: Web/JavaScript/Guide/Iterators_and_generators

- [Iteration protocols](/ja/docs/Web/JavaScript/Reference/Iteration_protocols)
- {{jsxref("Statements/for...of","for...of")}}
- {{jsxref("Statements/function*","function*")}} と {{jsxref("Generator","ジェネレーター","","true")}}
- {{jsxref("Statements/function*","function*")}} と {{jsxref("Generator","ジェネレーター","",1)}}
- {{jsxref("Operators/yield","yield")}} と {{jsxref("Operators/yield*","yield*")}}

## イテレーター
Expand Down
2 changes: 1 addition & 1 deletion files/ja/web/javascript/guide/keyed_collections/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ sayings.size; // 0

### `Object` と `Map` との比較

伝統的に、{{jsxref("Object", "objects", "", "1")}} は文字列を値にマップするのに使われてきました。オブジェクトを使うことで、キーを値に設定し、その値を取得し、キーを削除し、キーに対応する何かが格納されているかどうかを検出することができます、しかしながら、`Map` の方が少し便利です。
伝統的に、{{jsxref("Object", "objects", "", 1)}} は文字列を値にマップするのに使われてきました。オブジェクトを使うことで、キーを値に設定し、その値を取得し、キーを削除し、キーに対応する何かが格納されているかどうかを検出することができます、しかしながら、`Map` の方が少し便利です。

- `Object` のキーは {{jsxref("Global_Objects/String","Strings")}} オブジェクトです、`Map` ならどんな値も使えるというのに。
- `Map` は簡単にサイズを取得できます。`Object` はサイズを手作業で追跡する必要があります。
Expand Down
4 changes: 2 additions & 2 deletions files/ja/web/javascript/guide/meta_programming/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ console.log(p.a, p.b); // 1, 42

プロキシーの機能について話題にする際は、次の用語が使用されます。

- {{jsxref("Global_Objects/Proxy/Proxy","ハンドラー","","true")}} (handler)
- {{jsxref("Global_Objects/Proxy/Proxy","ハンドラー","",1)}} (handler)
- : トラップを入れるためのプレースホルダ用オブジェクト。
- トラップ (trap)
- : プロパティへのアクセスを提供するメソッドです。 (オペレーティングシステムにおける*トラップ*の概念と同じようなものです。)
Expand Down Expand Up @@ -408,7 +408,7 @@ typeof proxy; // "object" が返され, typeof はどんなトラップも引き

## リフレクション

{{jsxref("Reflect")}} は JavaScript で割り込み操作を行うメソッドを提供する組み込みオブジェクトです。そのメソッドは{{jsxref("Global_Objects/Proxy/Proxy","Proxy ハンドラー","","true")}}のメソッドと同じです。
{{jsxref("Reflect")}} は JavaScript で割り込み操作を行うメソッドを提供する組み込みオブジェクトです。そのメソッドは{{jsxref("Global_Objects/Proxy/Proxy","Proxy ハンドラー","",1)}}のメソッドと同じです。

`Reflect` は関数オブジェクトではありません。

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -143,7 +143,7 @@ function listAllProperties(o) {

## 新しいオブジェクトの作成

JavaScript には数多くの定義済みオブジェクトがあります。さらに、独自のオブジェクトを定義できます。オブジェクトは{{jsxref("Operators/Object_initializer","オブジェクト初期化子","","true")}}を使って作成することができます。他にも、まずコンストラクター関数を作り、その関数を `new` 演算子との組み合わせで呼び出すことでオブジェクトをインスタンス化することもできます。
JavaScript には数多くの定義済みオブジェクトがあります。さらに、独自のオブジェクトを定義できます。オブジェクトは{{jsxref("Operators/Object_initializer","オブジェクト初期化子","",1)}}を使って作成することができます。他にも、まずコンストラクター関数を作り、その関数を `new` 演算子との組み合わせで呼び出すことでオブジェクトをインスタンス化することもできます。

### オブジェクト初期化子の使用

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ console.log(total); // 4

### 2つの配列をマージする

この例では{{jsxref("Operators/Spread_syntax", "スプレッド構文", "", "1")}}を使用して、二番目の配列から最初の配列へすべての要素を挿入します。
この例では{{jsxref("Operators/Spread_syntax", "スプレッド構文", "", 1)}}を使用して、二番目の配列から最初の配列へすべての要素を挿入します。

```js
const vegetables = ["parsnip", "potato"];
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ if (x === undefined) {

> **メモ:** ここでは、標準の等価演算子ではなく厳密等価演算子を使わないといけません。厳密等価演算子とは違い、 `x == undefined` は、 `x` が `null` であるかどうかもチェックするからです。 `null` は `undefined` と等しくありません。
>
> 詳しくは、{{jsxref("Operators", "比較演算子","","true")}}を参照してください。
> 詳しくは、{{jsxref("Operators", "比較演算子","",1)}}を参照してください。

### typeof 演算子と undefined

Expand Down
16 changes: 8 additions & 8 deletions files/ja/web/javascript/reference/operators/class/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ slug: Web/JavaScript/Reference/Operators/class

{{jsSidebar("Operators")}}

**クラス式**は、 ECMAScript 2015 でクラスを定義する方法の 1 つです。{{jsxref("Operators/function", "関数式", "", "true")}}と同じように、クラス式は名前を付けることも付けないこともできます。名前を付けた場合、クラス名はクラス内部のみのローカルです。
**クラス式**は、 ECMAScript 2015 でクラスを定義する方法の 1 つです。{{jsxref("Operators/function", "関数式", "", 1)}}と同じように、クラス式は名前を付けることも付けないこともできます。名前を付けた場合、クラス名はクラス内部のみのローカルです。

JavaScript のクラスはプロトタイプベースの継承が使われます。

Expand All @@ -21,12 +21,12 @@ const MyClass = class [className] [extends otherClassName] {

## 解説

クラス式の構文は、{{jsxref("Statements/class", "クラス宣言(文)", "", "true")}} と似ています。 `class` 文では、 `class` 式の本体が{{jsxref("Strict_mode", "厳格モード", "", 1)}}で実行されます。
クラス式の構文は、{{jsxref("Statements/class", "クラス宣言(文)", "", 1)}} と似ています。 `class` 文では、 `class` 式の本体が{{jsxref("Strict_mode", "厳格モード", "", 1)}}で実行されます。

しかし、クラス式と{{jsxref("Statements/class", "クラス文", "", "true")}}ではいくつかの相違点があります。
しかし、クラス式と{{jsxref("Statements/class", "クラス文", "", 1)}}ではいくつかの相違点があります。

- クラス式ではクラス名(「束縛識別子」 (binding identifier))を省略できますが、{{jsxref("Statements/class", "クラス文", "", "true")}}では省略できません。
- クラス式は {{jsxref("Global_Objects/SyntaxError", "SyntaxError")}} を**発生させずに**クラスを再宣言することができます。これは{{jsxref("Statements/class", "クラス文", "", "true")}}の場合はできません。
- クラス式ではクラス名(「束縛識別子」 (binding identifier))を省略できますが、{{jsxref("Statements/class", "クラス文", "", 1)}}では省略できません。
- クラス式は {{jsxref("Global_Objects/SyntaxError", "SyntaxError")}} を**発生させずに**クラスを再宣言することができます。これは{{jsxref("Statements/class", "クラス文", "", 1)}}の場合はできません。

`constructor` メソッドは省略可能です。クラス式で生成されたクラスは、常に {{jsxref("Operators/typeof", "typeof")}} が "`function`" の値を返します。

Expand Down Expand Up @@ -89,6 +89,6 @@ Foo.name; // "NamedFoo"

## 関連情報

- {{jsxref("Operators/function", "関数式", "", "true")}}
- {{jsxref("Statements/class", "クラス宣言", "", "true")}}
- {{jsxref("Classes", "クラス", "", "true")}}
- {{jsxref("Operators/function", "関数式", "", 1)}}
- {{jsxref("Statements/class", "クラス宣言", "", 1)}}
- {{jsxref("Classes", "クラス", "", 1)}}
2 changes: 1 addition & 1 deletion files/ja/web/javascript/reference/statements/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ JavaScript アプリケーションは、適切な構文で書かれた文から
- {{jsxref("Statements/for...in", "for...in")}}
- : オブジェクトの列挙可能なプロパティに対し任意の順番で反復処理を行います。それぞれ個別のプロパティに対し、文を実行できます。
- {{jsxref("Statements/for...of", "for...of")}}
- : 反復可能オブジェクト ({{jsxref("Global_Objects/Array","配列","","true")}}、配列風オブジェクト、[イテレーターとジェネレーター](/ja/docs/Web/JavaScript/Guide/Iterators_and_generators)を含む) を反復処理し、それぞれ個別のプロパティの値に対する実行文をともなった反復処理フックを呼び出します。
- : 反復可能オブジェクト ({{jsxref("Global_Objects/Array","配列","",1)}}、配列風オブジェクト、[イテレーターとジェネレーター](/ja/docs/Web/JavaScript/Guide/Iterators_and_generators)を含む) を反復処理し、それぞれ個別のプロパティの値に対する実行文をともなった反復処理フックを呼び出します。
- {{jsxref("Statements/for-await...of", "for await...of")}}
- : 非同期反復オブジェクト、配列風オブジェクト、[イテレーターとジェネレーター](/ja/docs/Web/JavaScript/Guide/Iterators_and_generators)を反復処理し、各固有のプロパティ値で実行する文を実行しつつ、カスタムイテレーションフックを実行する。
- {{jsxref("Statements/while", "while")}}
Expand Down
Loading