Movatterモバイル変換


[0]ホーム

URL:


  1. Веб-технологии для разработчиков
  2. JavaScript
  3. Справочник по JavaScript
  4. JavaScript ссылки на ошибки
  5. SyntaxError: redeclaration of formal parameter "x"

This page was translated from English by the community.Learn more and join the MDN Web Docs community.

View in EnglishAlways switch to English

SyntaxError: redeclaration of formal parameter "x"

Сообщение

SyntaxError: redeclaration of formal parameter "x" (Firefox)SyntaxError: Identifier "x" has already been declared (Chrome)

Тип ошибки

SyntaxError

Что пошло не так?

Одно и то же имя переменной сначала использовано в качестве параметра, а потом объявлено ещё раз в теле функции с помощью оператора присваиванияlet. В JavaScript не допустимо переопределение переменной в рамках области видимости функции или блока при помощиlet.

Примеры

В данном случае переменная "arg" переопределяет аргумент:

js
function f(arg) {  let arg = "foo";}// SyntaxError: redeclaration of formal parameter "arg"

Если вы хотите изменить значение переменной "arg" в теле функции, это можно сделать, но для этого не требуется объявлять эту же переменную ещё раз. Иначе говоря, ключевое словоlet можно опустить. Если же вы хотите создать новую переменную, необходимо её переименовать, поскольку в противном случае она вступает в конфликт с уже существующим параметром функции.

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

Примечания о совместимости

Смотрите также

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp