aboutsummaryrefslogtreecommitdiff
path: root/files/fr/web/javascript/reference/erreurs/var_hides_argument
diff options
context:
space:
mode:
authorPeter Bengtsson <mail@peterbe.com>2020-12-08 14:40:17 -0500
committerPeter Bengtsson <mail@peterbe.com>2020-12-08 14:40:17 -0500
commit33058f2b292b3a581333bdfb21b8f671898c5060 (patch)
tree51c3e392513ec574331b2d3f85c394445ea803c6 /files/fr/web/javascript/reference/erreurs/var_hides_argument
parent8b66d724f7caf0157093fb09cfec8fbd0c6ad50a (diff)
downloadtranslated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.gz
translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.bz2
translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.zip
initial commit
Diffstat (limited to 'files/fr/web/javascript/reference/erreurs/var_hides_argument')
-rw-r--r--files/fr/web/javascript/reference/erreurs/var_hides_argument/index.html55
1 files changed, 55 insertions, 0 deletions
diff --git a/files/fr/web/javascript/reference/erreurs/var_hides_argument/index.html b/files/fr/web/javascript/reference/erreurs/var_hides_argument/index.html
new file mode 100644
index 0000000000..44ba49c346
--- /dev/null
+++ b/files/fr/web/javascript/reference/erreurs/var_hides_argument/index.html
@@ -0,0 +1,55 @@
+---
+title: 'TypeError: variable "x" redeclares argument'
+slug: Web/JavaScript/Reference/Erreurs/Var_hides_argument
+tags:
+ - Erreurs
+ - JavaScript
+ - TypeError
+translation_of: Web/JavaScript/Reference/Errors/Var_hides_argument
+---
+<div>{{jsSidebar("Errors")}}</div>
+
+<h2 id="Message">Message</h2>
+
+<pre class="syntaxbox">TypeError: variable "x" redeclares argument (Firefox)
+</pre>
+
+<h2 id="Type_d'erreur">Type d'erreur</h2>
+
+<p>Une erreur {{jsxref("TypeError")}}, uniquement <a href="/fr/docs/Web/JavaScript/Reference/Strict_mode">en mode strict</a>.</p>
+
+<h2 id="Quel_est_le_problème">Quel est le problème ?</h2>
+
+<p>Le même nom de variable est utilisé comme nom pour un paramètre et comme nom de variable via une affectation <code><a href="/fr/docs/Web/JavaScript/Reference/Instructions/var">var</a></code>. Cela peut être lié à un conflit de nommage et le moteur envoie un avertissement.</p>
+
+<p>Cette erreur ne se produit qu'en mode strict. Pour du code non-strict, la redéclaration est ignorée silencieusement..</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<h3 id="Exemples_invalides">Exemples invalides</h3>
+
+<p>Ici, la variable <code>arg</code> redéclare l'argument de la fonction :</p>
+
+<pre class="brush: js example-bad">"use strict";
+
+function f(arg) {
+ var arg = "foo";
+}
+</pre>
+
+<h3 id="Exemples_valides">Exemples valides</h3>
+
+<p>Pour résoudre ce problème, on pourra généralement retirer l'instruction <code><a href="/fr/docs/Web/JavaScript/Reference/Instructions/var">var</a></code> car la variable existe déjà et peut être utilisée. Si on ne veut pas utiliser cette même variable, mieux vaudra renommer le paramètre ou la variable interne afin de lever l'ambiguïté.</p>
+
+<pre class="brush: js example-good">"use strict";
+
+function f(arg) {
+ arg = "foo";
+}
+</pre>
+
+<h2 id="Voir_aussi">Voir aussi</h2>
+
+<ul>
+ <li><a href="/fr/docs/Web/JavaScript/Reference/Strict_mode">Le mode strict</a></li>
+</ul>