Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. JavaScript
  3. JavaScript-Referenz
  4. JavaScript-Fehlerreferenz
  5. SyntaxError: Setterfunktionen müssen ein Argument haben

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

View in EnglishAlways switch to English

SyntaxError: Setterfunktionen müssen ein Argument haben

Der JavaScript-Ausnahmefehler "setter functions must have one argument" tritt auf, wenn einSetter deklariert wird und die Parameterliste nicht genau ein formales Parameter enthält.

Nachricht

SyntaxError: Setter must have exactly one formal parameter. (V8-based)SyntaxError: Setter function argument must not be a rest parameter (V8-based)SyntaxError: setter functions must have one argument (Firefox)SyntaxError: Unexpected token ','. setter functions must have one parameter. (Safari)SyntaxError: Unexpected token '...'. Expected a parameter pattern or a ')' in parameter list. (Safari)

Fehlerart

SyntaxError

Was ist schiefgelaufen?

Dieset-Eigenschaftssyntax sieht aus wie eine Funktion, ist aber strenger, und nicht alle Funktionssyntax ist erlaubt. Ein Setter wird immer mit genau einem Argument aufgerufen, daher ist es wahrscheinlich ein Fehler, ihn mit einer anderen Anzahl von Parametern zu definieren. Dieser Parameter kanndestrukturiert werden oder einenStandardwert haben, aber er kann keinRestparameter sein.

Beachten Sie, dass dieser Fehler nur für Property-Setter gilt, die dieset-Syntax verwenden. Wenn Sie den Setter mitObject.defineProperty() usw. definieren, wird der Setter als normale Funktion definiert, obwohl es wahrscheinlich immer noch ein Fehler ist, wenn der Setter eine andere Anzahl von Argumenten erwartet, da er mit genau einem Argument aufgerufen wird.

Beispiele

Ungültige Fälle

js
const obj = {  set value() {    this._value = Math.random();  },};

Gültige Fälle

js
// You must declare one parameter, even if you don't use itconst obj = {  set value(_ignored) {    this._value = Math.random();  },};// You can also declare a normal method insteadconst obj = {  setValue() {    this._value = Math.random();  },};

Siehe auch

Help improve MDN

Learn how to contribute Diese Seite wurde automatisch aus dem Englischen übersetzt.

[8]ページ先頭

©2009-2025 Movatter.jp