오류 발생
redis 채팅 데이터를 프론트에 보내기위해서 json 문자열을 javascript 객체로 변환하려 할때 다음과 같은 오류가 발생했다.
const change = JSON.parse(chatData);
Unexpected non-whitespace character after JSON at position 73
오류 발생 원인
찾아보니 `JSON.parse` 함수는 단일 JSON 문자열만 처리할 수 있기 때문에 오류가 발생하는 거였다.
해결방법
해결을 위해서는 배열 내 각 JSON문자열을 개별적으로 파싱해야한다. forEach를 통해 각 JSON문자열을 개별적으로 파싱했다.
chatData.forEach((item) => {
const parsedItem = JSON.parse(item);
respondData.push(parsedItem);
});
forEach란?
forEach는 JavaScript에서 배열을 다룰 때 사용되는 메소드입니다. 이 메소드는 배열의 각 요소에 대해 지정된 함수를 한 번씩 실행합니다. 이를 통해 배열의 각 요소에 대해 반복적인 작업을 수행할 수 있습니다.
'sns 프로젝트' 카테고리의 다른 글
React LCP 성능 개선하기 (0) | 2024.04.26 |
---|---|
React 이미지 최적화를 통한 성능 개선하기 (0) | 2024.04.26 |
실시간 채팅 기능 수정하기(실시간 채팅 업데이트) (1) | 2024.01.24 |
메세지 채팅 기능 구현하기(백엔드 코드, redis 연결 ) (0) | 2024.01.24 |
메세지 채팅 기능 (웹소켓, redis, 실시간 알람 기능) (1) | 2024.01.24 |