Javascript
[javascript] localStorage로 브라우저에 데이터 보관하기
breeghty
2023. 2. 23. 22:13
개발자 도구를 눌러 Application에 들어가면 브라우저가 새로고침되어도 사라지지 않는 데이터를 보관할 수 있게 해주는 localStorage 가 있다. sessionStorage와 다른 점은,
- localStorage: 새로고침해도 정보가 사라지지 않는다. 유저가 고의로 삭제하지 않는 한.
- sessionStorage: 브라우저를 껐다 켜면 정보가 사라진다. 임시저장소.
localStorage 사용방법
localStorage에 데이터를 저장할 때는 key, value 형식으로 저장한다. localStorage에는 숫자와 문자 데이터만 저장할 수 있다.(최대 5MB)
localStorage.setItem('name', 'Minji');//문자또는 숫자 저장
localStorage.getItem('name');//저장해 놨던 자료를 출력가능.
localStorage.removeItem('name');//저장해 놨던 자료를 삭제
localStorage에 배열이나 객체를 보관하고 싶다면?
위에서 말했듯이 localStorage에는 문자와 숫자 데이터만 보관할 수 있다. 배열과 객체를 보관하려면 이를 '문자화'시켜 보관해야 한다. 수정할 때도 역시
'문자화된 배열' -> 다시 '배열화' -> 배열 수정 -> 다시 문자화
이 단계를 거쳐서 수정해야 한다.
//localstorage에 arr,obj저장
let arr = [1,2,3];
//배열을 json화하여 문자로 저장
let newArr = JSON.stringify(arr);
localStorage.setItem('num', newArr);
//newArr는 문자이다. 배열이 아니다.
//json을 다시 배열로 바꾸기
JSON.parse(localStorage.getItem('num'))