Identifier 'elements' has already been declared 에러

Last Updated: 2022년 10월 13일 | | 댓글 남기기

워드프레스 bbPress 게시판에서 날짜 포맷을 바꾸고 길이를 조정하는 자바스크립트 코드를 적용하니 Uncaught SyntaxError: Identifier 'elements' has already been declared 에러가 발생하면서 스크립트를 제대로 작동하지 않는 문제가 발생하여 이 에러에 대하여 구글링을 해보았습니다.

Identifier 'elements' has already been declared 에러

자바스크립트에서 Uncaught SyntaxError: Identifier '변수명' has already been declared 오류

"Identifier has already been declared error"는 'let' 또는 'const' 키워드를 사용하여 동일 스코프(범위) 내에서 변수가 여러 번 선언될 때 발생한다고 합니다. 이 에러를 해결하려면 동일 스코프 내에서 변수들을 한 번만 선언해야 합니다.

이 오류가 발생하는 몇 가지 예:

const num = 10;
// ⛔️ Identifier 'num'이 이미 선언됨
const num = 10;

function sum() {}
// ⛔️ Identifier 'sum'이 이미 선언됨
const sum = 15;

// ⛔️ Identifier 'i'가 이미 선언됨
for (let i = 0, i < iterable.length, i++) {
  // 👆️ 콤마가 아닌 세미콜론을 사용해야 함
}

// 출처: https://bobbyhadz.com/blog/javascript-identifier-has-already-been-declared

num 변수가 두 번 선언되었으므로 에러가 발생합니다. const 또는 let 키워드를 사용하여 선언된 변수는 재선언하는 것이 허용되지 않습니다.

// ⛔️ Identifier 'x'가 이미 선언됨
let x = 10;
let x = 15;

변수를 재할당하려면 let 키워드를 사용하여 선언한 다음, 다시 지정(재할당) 시에는 키워드를 사용하지 않도록 합니다.

let x = 10;
x = 15;

console.log(x); // 👉️ 15

온라인 구문 유효성 검사기(Syntax Validator)에 코드를 붙여넣기하여 문법 검사를 실시해볼 수 있습니다. 그러면 에러가 나는 부분을 알 수 있을 것입니다.

참고


댓글 남기기

Leave a Comment