인코딩과 디코딩 (Encoding & Decoding)

MJ·2023년 7월 18일
0


업로드중..

이슈

데이터를 html 문자열로 append()해주면서 그 문자열안에서
함수 파라미터로 객체를 전달해야 했다.
여기서 객체가 문자열안에서 그려지면서 문제가 발생.
[object]

원인

html 문자열안에서 객체의 문자를 제대로 읽지 못해서 발생한 문제.

해결방법

파라미터로 넘길때 인코딩해주고
받아온 뒤에 다시 디코딩해서 디비에 넘겨주었다.


    let memoEncode = encodeURI(JSON.stringify(memo));
    let memoDecode = JSON.parse(decodeURI(memo));

JSON.parse()와 JSON.stringify()이론

json: 자바스크립트 내장 객체
json.parse(): json문자열을 js객체로 변환
json.stringify(): js객체를 json 문자열로 변환

tip.

js객체에 많은 데이터를 담는 경우 문자열이 한줄로 반환되면 보기 힘들어지는데, stringify() 메서드의 3번째인지로 들여쓰기할 공백의 크기를 지정해줄수있다.

JSON.stringify(obj, null, 2);
profile
하이브리드앱, 웹 프론트, 웹 개발, 웹앱, 디비, 서버, 국가연구원

2개의 댓글

comment-user-thumbnail
2023년 7월 18일

정보가 많아서 도움이 많이 됐습니다.

1개의 답글