| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Errors/Duplicate_parameter | [Back] [Original] |
Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen bersetzt, und kann Fehler enthalten. Erfahre mehr ber dieses Experiment.
Der JavaScript-Ausnahmefehler "doppeltes formales Argument x" oder "doppelte Argumentnamen sind in diesem Kontext nicht erlaubt" tritt auf, wenn eine Funktion zwei oder mehr Parameter-Bindings mit demselben Namen erstellt und die Funktion keine nicht-strikte Funktion mit nur einfachen Parametern ist.
SyntaxError: Duplicate parameter name not allowed in this context (V8-based) SyntaxError: duplicate formal argument x (Firefox) SyntaxError: duplicate argument names not allowed in this context (Firefox) SyntaxError: Cannot declare a parameter named 'x' in strict mode as it has already been declared. (Safari) SyntaxError: Duplicate parameter 'x' not allowed in function with default parameter values. (Safari) SyntaxError: Duplicate parameter 'x' not allowed in function with a rest parameter. (Safari) SyntaxError: Duplicate parameter 'x' not allowed in function with destructuring parameters. (Safari)
SyntaxError
Zwei formale Parameter mit demselben Namen zu haben, ist wahrscheinlich ein Fehler das zweite Auftreten wrde dazu fhren, dass das erste Auftreten ber den Parameternamen nicht zugnglich ist. In lterem JavaScript war dies erlaubt. Um bestehenden Code nicht zu brechen, ist dies nur dann ein Fehler, wenn der Code garantiert nicht veraltet ist entweder weil er im strikten Modus ist oder weil er moderne Parametersyntax verwendet (Rest, Standard- oder destrukturierte Parameter).
"use strict";
function add(x, x) {
// How can you access both "x" parameters?
// SyntaxError: duplicate formal argument x
}
function doSomething(name, { name }) {
// How can you access both "name" parameters?
// SyntaxError: duplicate argument names not allowed in this context
}
function doSomething(operationName, { name: userName }) {
// You can access both "operationName" and "userName" parameters.
}
function doSomething(name, user) {
// You can access both "name" and "user.name" parameters.
}
Der Bauplan fr ein besseres Internet.
Teile dieses Inhalts sind 19982026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfgbar unter einer Creative-Commons-Lizenz.
| Web Proxy Viewer | New URL | Original Page |