본문 바로가기
sns 프로젝트

JSON 문자열 JAVASCRIPT 객체 변환 오류

by 우주속공간 2024. 1. 25.

 

오류 발생

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에서 배열을 다룰 때 사용되는 메소드입니다. 이 메소드는 배열의 각 요소에 대해 지정된 함수를 한 번씩 실행합니다. 이를 통해 배열의 각 요소에 대해 반복적인 작업을 수행할 수 있습니다.