diff options
| author | julieng <julien.gattelier@gmail.com> | 2021-08-03 08:03:23 +0200 |
|---|---|---|
| committer | SphinxKnight <SphinxKnight@users.noreply.github.com> | 2021-09-03 08:08:25 +0200 |
| commit | bf8e099b9c8b3c60d60b3712b4fc97b052c39887 (patch) | |
| tree | c101746d082c9581c94f5937519c7d0e2f4af8cb /files/fr/web/javascript/reference/global_objects/string/substr | |
| parent | 844f5103992238c0c23203286dad16a466e89c97 (diff) | |
| download | translated-content-bf8e099b9c8b3c60d60b3712b4fc97b052c39887.tar.gz translated-content-bf8e099b9c8b3c60d60b3712b4fc97b052c39887.tar.bz2 translated-content-bf8e099b9c8b3c60d60b3712b4fc97b052c39887.zip | |
convert content to md
Diffstat (limited to 'files/fr/web/javascript/reference/global_objects/string/substr')
| -rw-r--r-- | files/fr/web/javascript/reference/global_objects/string/substr/index.md | 146 |
1 files changed, 61 insertions, 85 deletions
diff --git a/files/fr/web/javascript/reference/global_objects/string/substr/index.md b/files/fr/web/javascript/reference/global_objects/string/substr/index.md index 9ee8253861..00eabdbffd 100644 --- a/files/fr/web/javascript/reference/global_objects/string/substr/index.md +++ b/files/fr/web/javascript/reference/global_objects/string/substr/index.md @@ -11,67 +11,68 @@ tags: translation_of: Web/JavaScript/Reference/Global_Objects/String/substr original_slug: Web/JavaScript/Reference/Objets_globaux/String/substr --- -<div>{{JSRef}}</div> +{{JSRef}} -<div class="warning"><p><strong>Attention :</strong> Bien que <code>String.prototype.substr(…)</code> ne soit pas strictement obsolète (au sens où elle n'a pas été retirée des standards), elle est définie au sein de <a href="https://www.ecma-international.org/ecma-262/9.0/index.html#sec-additional-ecmascript-features-for-web-browsers">l'Annexe B</a> du standard ECMA-262 qui définit l'ensemble des fonctionnalités historiques qui doivent être évitées autant que possible. On utilisera la méthode {{jsxref("String.prototype.substring()")}} à la place.</p></div> +> **Attention :** Bien que `String.prototype.substr(…)` ne soit pas strictement obsolète (au sens où elle n'a pas été retirée des standards), elle est définie au sein de [l'Annexe B](https://www.ecma-international.org/ecma-262/9.0/index.html#sec-additional-ecmascript-features-for-web-browsers) du standard ECMA-262 qui définit l'ensemble des fonctionnalités historiques qui doivent être évitées autant que possible. On utilisera la méthode {{jsxref("String.prototype.substring()")}} à la place. -<p>La méthode <strong><code>substr()</code></strong> retourne la partie d'une chaîne de caractères comprise entre l'indice de départ et un certain nombre de caractères après celui-ci.</p> +La méthode **`substr()`** retourne la partie d'une chaîne de caractères comprise entre l'indice de départ et un certain nombre de caractères après celui-ci. -<div>{{EmbedInteractiveExample("pages/js/string-substr.html")}}</div> +{{EmbedInteractiveExample("pages/js/string-substr.html")}} -<h2 id="Syntaxe">Syntaxe</h2> +## Syntaxe -<pre class="syntaxbox"><em>chn</em>.substr(<var>début</var>[, <var>longueur</var>])</pre> + chn.substr(début[, longueur]) -<h3 id="Paramètres">Paramètres</h3> +### Paramètres -<dl> - <dt><code>début</code></dt> - <dd>L'indice du premier caractère à inclure dans la sous-chaîne retournée.</dd> - <dt><code>longueur</code></dt> - <dd>Optionnel. Le nombre de caractères à extraire.</dd> -</dl> +- `début` + - : L'indice du premier caractère à inclure dans la sous-chaîne retournée. +- `longueur` + - : Optionnel. Le nombre de caractères à extraire. -<h3 id="Valeur_de_retour">Valeur de retour</h3> +### Valeur de retour -<p>Une nouvelle chaîne contenant la partie indiquée de la chaîne donnée.</p> +Une nouvelle chaîne contenant la partie indiquée de la chaîne donnée. -<h2 id="Description">Description</h2> +## Description -<p><code>substr()</code> extrait <code>longueur</code> caractères d'une <code>string</code>, en comptant à partir de l'indice <code>début</code>.</p> +`substr()` extrait `longueur` caractères d'une `string`, en comptant à partir de l'indice `début`. -<p>Si <code>début</code> est un nombre positif, l'indice commence à compter du début de la chaîne. Sa valeur est limitée à <code>chn.length</code>.</p> +Si `début` est un nombre positif, l'indice commence à compter du début de la chaîne. Sa valeur est limitée à `chn.length`. -<p>Si <code>début</code> est un nombre négatif, l'indice commence à compter de la fin de la chaîne. Sa valeur est limitée à <code>-chn.length</code>.</p> +Si `début` est un nombre négatif, l'indice commence à compter de la fin de la chaîne. Sa valeur est limitée à `-chn.length`. -<p>Note : dans JScript de Microsoft, les valeurs négatives de l'argument <code>début</code> ne sont pas considérées comme faisant référence à la fin de la chaîne.</p> +Note : dans JScript de Microsoft, les valeurs négatives de l'argument `début` ne sont pas considérées comme faisant référence à la fin de la chaîne. -<p>Si <code>longueur</code> est omise, <code>substr()</code> extrait les caractères jusqu'à la fin de la chaîne.</p> +Si `longueur` est omise, `substr()` extrait les caractères jusqu'à la fin de la chaîne. -<p>Si <code>longueur</code> est {{jsxref("undefined")}}, <code>substr()</code> extrait les caractères jusqu'à la fin de la chaîne.</p> +Si `longueur` est {{jsxref("undefined")}}, `substr()` extrait les caractères jusqu'à la fin de la chaîne. -<p>Si <code>longueur</code> est négative, elle est traitée comme 0.</p> +Si `longueur` est négative, elle est traitée comme 0. -<p>Pour <code>début</code> comme pour <code>longueur</code>, NaN est traité comme 0.</p> +Pour `début` comme pour `longueur`, NaN est traité comme 0. -<h2 id="Exemples">Exemples</h2> +## Exemples -<pre class="brush: js">var uneChaine = 'Mozilla'; +```js +var uneChaine = 'Mozilla'; -<code>console.log(</code>uneChaine<code>.substr(0, 1)); // 'M' -console.log(</code>uneChaine<code>.substr(1, 0)); // '' -console.log(</code>uneChaine<code>.substr(-1, 1)); // 'a' -console.log(</code>uneChaine<code>.substr(1, -1)); // '' -console.log(</code>uneChaine<code>.substr(-3)); // 'lla' -console.log(</code>uneChaine<code>.substr(1)); // 'ozilla' -console.log(</code>uneChaine<code>.substr(-20, 2)); // 'Mo' -console.log(</code>uneChaine<code>.substr(20, 2)); // ''</code></pre> +console.log(uneChaine.substr(0, 1)); // 'M' +console.log(uneChaine.substr(1, 0)); // '' +console.log(uneChaine.substr(-1, 1)); // 'a' +console.log(uneChaine.substr(1, -1)); // '' +console.log(uneChaine.substr(-3)); // 'lla' +console.log(uneChaine.substr(1)); // 'ozilla' +console.log(uneChaine.substr(-20, 2)); // 'Mo' +console.log(uneChaine.substr(20, 2)); // '' +``` -<h2 id="Prothèse_d'émulation_(polyfill)">Prothèse d'émulation (<em>polyfill</em>)</h2> +## Prothèse d'émulation (_polyfill_) -<p>JScript de Microsoft ne supporte pas les valeurs négatives pour l'indice de début. Pour utiliser cette fonctionnalité, vous pouvez utiliser le code suivant :</p> +JScript de Microsoft ne supporte pas les valeurs négatives pour l'indice de début. Pour utiliser cette fonctionnalité, vous pouvez utiliser le code suivant : -<pre class="brush: js">// N'appliquer que lorsque la fonction est incomplète +```js +// N'appliquer que lorsque la fonction est incomplète if ('ab'.substr(-1) != 'b') { /** * Obtenir la sous-chaîne d'une chaîne @@ -81,56 +82,31 @@ if ('ab'.substr(-1) != 'b') { */ String.prototype.substr = function(substr) { return function(début, longueur) { - <code>// Appel de la méthode originale - return </code>substr<code>.call(this,</code> + // Appel de la méthode originale + return substr.call(this, // Si on a un début négatif, calculer combien il vaut à partir du début de la chaîne // Ajuster le paramètre pour une valeur négative -<code> début < 0 ? this.length + début : début, + début < 0 ? this.length + début : début, longueur) - </code>} + } }(String.prototype.substr); } -</pre> - -<h2 id="Spécifications">Spécifications</h2> - -<table class="standard-table"> - <tbody> - <tr> - <th scope="col">Spécification</th> - <th scope="col">État</th> - <th scope="col">Commentaires</th> - </tr> - <tr> - <td>{{SpecName('ES3')}}</td> - <td>{{Spec2('ES3')}}</td> - <td>Définie dans la Compatibility Annex B (informative). Implémentée dans JavaScript 1.0.</td> - </tr> - <tr> - <td>{{SpecName('ES5.1', '#sec-B.2.3', 'String.prototype.substr')}}</td> - <td>{{Spec2('ES5.1')}}</td> - <td>Définie dans la Compatibility Annex B (informative).</td> - </tr> - <tr> - <td>{{SpecName('ES6', '#sec-string.prototype.substr', 'String.prototype.substr')}}</td> - <td>{{Spec2('ES6')}}</td> - <td>Définie dans l'Annex B (normative) pour les Additional ECMAScript Features for Web Browsers.</td> - </tr> - <tr> - <td>{{SpecName('ESDraft', '#sec-string.prototype.substr', 'String.prototype.substr')}}</td> - <td>{{Spec2('ESDraft')}}</td> - <td>Définie dans l'Annex B (normative) pour les Additional ECMAScript Features for Web Browsers</td> - </tr> - </tbody> -</table> - -<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2> - -<p>{{Compat("javascript.builtins.String.substr")}}</p> - -<h2 id="Voir_aussi">Voir aussi</h2> - -<ul> - <li>{{jsxref("String.prototype.slice()")}}</li> - <li>{{jsxref("String.prototype.substring()")}}</li> -</ul> +``` + +## Spécifications + +| Spécification | État | Commentaires | +| ------------------------------------------------------------------------------------------------------------ | ---------------------------- | -------------------------------------------------------------------------------------------- | +| {{SpecName('ES3')}} | {{Spec2('ES3')}} | Définie dans la Compatibility Annex B (informative). Implémentée dans JavaScript 1.0. | +| {{SpecName('ES5.1', '#sec-B.2.3', 'String.prototype.substr')}} | {{Spec2('ES5.1')}} | Définie dans la Compatibility Annex B (informative). | +| {{SpecName('ES6', '#sec-string.prototype.substr', 'String.prototype.substr')}} | {{Spec2('ES6')}} | Définie dans l'Annex B (normative) pour les Additional ECMAScript Features for Web Browsers. | +| {{SpecName('ESDraft', '#sec-string.prototype.substr', 'String.prototype.substr')}} | {{Spec2('ESDraft')}} | Définie dans l'Annex B (normative) pour les Additional ECMAScript Features for Web Browsers | + +## Compatibilité des navigateurs + +{{Compat("javascript.builtins.String.substr")}} + +## Voir aussi + +- {{jsxref("String.prototype.slice()")}} +- {{jsxref("String.prototype.substring()")}} |
