JS

time 속성으로 댓글 수정, 삭제하기

려낭 2024. 5. 8. 11:52

 

if (inputPassword === commentToDelete.password) {
const filteredComments = comments.filter((comment) => comment.time !== commentToDelete.time);
localStorage.setItem("comments", JSON.stringify(filteredComments));
loadComments();
alert("댓글이 삭제되었습니다.");
} else {
alert("비밀번호가 일치하지 않습니다.");
}

 

댓글 삭제기능을 구현하는데 time 속성을 사용하는 이유에 대해 궁금해졌다.

인덱스가 있는데 왜 time 속성으로 filter하는걸까?

 

time 속성을 사용하는 이유는 각 댓글이 유일한 시간을 가지기 때문이다! 

여러 댓글이 동시에 작성되는 경우에도 작성시간은 각각 고유하다.

그래서 댓글을 식별할 때 time 속성을 사용하면 중복되지 않는 값을 가지고 있어서 식별하는데 용이하다.

 

const originalIndex = comments.findIndex((c) => c.time === commentToEdit.time);

 

수정기능에서는 findindex() 메서드도 사용하는데

우선 time속성으로 식별한 후에 혹여나 있을 동일한 시간으로 작성되는 댓글이 있을 수 있기 때문에

그 안에서 인덱스로 한번 더 식별하여 정확성을 높일 수 있다.

'JS' 카테고리의 다른 글

문자열의 대문자를 소문자로 변환하기- JS  (0) 2024.04.30
TMDB에서 데이터 받아오기  (0) 2024.04.25
Javascript 문법  (0) 2024.04.23