Thanks to visit codestin.com
Credit goes to developer.mozilla.org

Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

SyntaxError: Neudeklaration des formalen Parameters "x"

Der JavaScript-Ausnahmefehler "Neudeklaration des formalen Parameters" tritt auf, wenn ein Funktionsparameter denselben Variablennamen aufweist und dann im Funktionskörper erneut mit einer let-Zuweisung deklariert wird.

Nachricht

SyntaxError: Identifier "x" has already been declared (V8-based)
SyntaxError: redeclaration of formal parameter "x" (Firefox)
SyntaxError: Cannot declare a let variable twice: 'x'. (Safari)

Fehlertyp

SyntaxError

Was ist schiefgelaufen?

Derselbe Variablenname tritt als Funktionsparameter auf und wird dann im Funktionskörper erneut mit einer let-Zuweisung deklariert. Die Neudeklaration derselben Variablen innerhalb desselben Funktions- oder Blockbereichs mit let ist in JavaScript nicht erlaubt.

Beispiele

Neu deklariertes Argument

In diesem Fall deklariert die Variable "arg" das Argument neu.

js
function f(arg) {
  let arg = "foo";
}

// SyntaxError: redeclaration of formal parameter "arg"

Wenn Sie den Wert von "arg" im Funktionskörper ändern möchten, können Sie das tun, aber Sie müssen dieselbe Variable nicht erneut deklarieren. Mit anderen Worten: Sie können das let-Schlüsselwort weglassen. Wenn Sie eine neue Variable erstellen möchten, müssen Sie sie umbenennen, da ein Konflikt mit dem Funktionsparameter bereits besteht.

js
function f(arg) {
  arg = "foo";
}

function g(arg) {
  let bar = "foo";
}

Siehe auch