localStorage와 sessionStorage는 둘 다 저장소로서의 기능은 대부분 동일하다.
하지만 sessionStorage의 경우 세션이 종료되면 저장된 데이터도 함께 사라진다는 점이 다른점이다.
쿠키는 서버측과 클라이언트측 양쪽에서 쿠키 데이터를 사용하는 api가 존재한다.
이와 달리 localStorage는 로컬환경에서만 컨트롤된다.
또한 localStorage는 기간 기능이 없어서 소멸 기간을 정해주지 못한다.
localStorage는 자바스크립트 객체 자체를 넣는 것이 가능하다
sessionStorage는 다른 탭이라면 데이터가 공유되지 않는다.
localStorage의 키와 값은 반드시 문자열이어야한다. 다른 자료형을 사용하게 되면 문자열로 자동 변환된다.
localStorage와 sessionStorage의 데이터가 갱신될 때 storage 이벤트가 실행이 된다.
event.storageArea에는 스토리지 객체가 포함되어 있다. storage 이벤트는 sessionStorage나 localStorage가 변경될 때 모두 발생하기 때문에 스토리지 종류에 상관없이 실제 수정이 일어나면 응답이 가능하다.
참고