как передать переменную в функцию js

Нужно каждый раз вызывать функцию с новой переменной namePath, а оно выдает ошибку.
Вот такой код есть:

function createNewPath(namePath,[...arr],color) {
  let namePath = new Path2D()
  namePath.rect([0], arr[1], arr[2], arr[3])
  namePath.closePath()
  ctx.fillStyle = `${color}`;
  ctx.fill(namePath)
  ctx.stroke(namePath)
}

вызов функции

createNewPath(contentPath,[0, height - height / 3, width, height - height / 2],"rgba(43, 41, 41, 1)");
createNewPath(redLine,[0, height - height / 3, width, height - height / 2],"rgba(43, 41, 41, 1)")

Получаю ошибку

Uncaught SyntaxError: Identifier 'namePath' has already been declared

и такую

введите сюда описание изображения


Ответы (1 шт):

Автор решения: Алексей Шиманский
 namePath.rect([0]
               ^^^^

Что это за ноль такой? Обращение к вселенной?))


Cannot access 'contentPath' before initialization at background.onload – Павло Смолинець 7 минут назад

Означает, что переменная наверное константа и создана ПОСЛЕ обращения к ней, а надо создавать и инициализировать ДО обращения


Identifier 'namePath' has already been declared

Тут итак всё ясно, namePath ужЕ объявлен в параметрах функции, а вы внутри пытаетесь это сделать ещё раз через let namePath

→ Ссылка