[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Errors/Redeclared_parameter [Back]  [Original]

SyntaxError: redeclaration of formal parameter "x" - JavaScript | MDN

Esta pgina foi traduzida do ingls pela comunidade. Saiba mais e junte-se comunidade MDN Web Docs.

View in English Always switch to English

SyntaxError: redeclaration of formal parameter "x"

Mensagem

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

In this article

Tipo de Erro

SyntaxError

O que deu errado?

O mesmo nome de varivel ocorre como parmetro da funo e ento redeclarada atribuindo let no corpo da funo. Redeclarando a mesma varivel dentro da mesma funo ou no escopo do bloco usando let no permitido em JavaScript.

Exemplos

Neste caso, a varivel "arg" redeclara o argumento.

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

// SyntaxError: redeclaration of formal parameter "arg"

Se voc quiser mudar o valor de "arg" no corpo da funo, voc pode fazer, mas voc no precisa declarar novamente a mesma varivel. Em outras palavras: voc pode omitir a palavra chave let. Se voc quiser criar uma nova varivel, voc precisa renomea-la, pois isso conflita com o parmetro da funo.

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

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

Notas de compatibilidade

Veja tambm


Web Proxy Viewer  |  New URL  |  Original Page