아랄라랄라
R 스토리
아랄라랄라
전체 방문자
오늘
어제
  • All (198)
    • Web (145)
      • Markup | WEB (9)
      • Styles (45)
      • javascript (32)
      • jquery (28)
      • vue (16)
      • react (10)
      • more (5)
    • IT (31)
      • CS (3)
      • git hub (5)
      • UI | UX (18)
      • more (5)
    • ETC (22)
      • 이슈노트 (12)
      • 스터디 (10)
      • 아랄라 ☞☜ (0)
      • JOB🛠 (0)

인기 글

반응형
hELLO · Designed By 정상우.
아랄라랄라

R 스토리

Web/javascript

[브라우저] 로컬스토리지, 세션 스토리지 , 캐시

2018. 7. 27. 15:56

로컬스토리지, 세션 스토리지 , 캐시

 
 
 
로컬 스토리지(localStorage)와 세션 스토리지(sessionStorage)는 HTML5에서 추가된 저장소이다. 

 

간단한 키와 값을 저장할 수 있다.(  키 : 밸류 )
 
이 둘의 차이점은 데이터의 영구성이다.
 
로컬 스토리지 : 사용자가 지우지 않는 이상 계속 브라우저에 남아있다.(단, 캐시삭제하면 제거된다.)
세션 스토리지 : 윈도우나 브라우저 탭을 닫을 경우 제거된다.
*단, 비밀번호 같은 중요한 정보는 저장하면 안된다. 클라이언트에 저장하는 것이기 때문에 털릴 가능성 100%
쿠키 : 만료 기한이 있는 키-값 저장소이다. 4kb 용량 제한이 있고, 매 서버 요청마다 서버로 쿠키가 같이 전송된다.

 

두 스토리지는 모두 window 객체()안에 들어있다. 스토리지 객체를 상속받기 때문에 메소드가 공통적으로 존재한다. 도메인 별 용량 제한도 있다.(프로토콜, 호스트, 포트가 같으면 같은 스토리지를 공유) 모바일은 2.5mb/데스크탑은 5~10mb이다.
 
 

 
로컬 스토리지 : window.localStorage에 위치한다.
키-밸류. 모두 문자열로 변환된다.
localStorage.setItem('name', 'ara');
localStorage.setItem('birth', 1990);
localStorage.getItem('name'); // ara
localStorage.getItem('birth'); // 1990 (문자열)
localStorage.removeItem('birth');
localStorage.getItem('birth'); // null (삭제됨)
localStorage.clear(); // 전체 삭제

localStorage.setItem( 키, 값 )으로 로컬 스토리지에 저장한 후,

localStorage.getItem( 키 )로 조회한다.

localStorage.removeItem( 키 )하면 해당 키가 지워지고,

localStorage.clear( )하면 스토리지 전체가 비워진다.

 

 

	//로컬아이디 설정
	var local_id;
	if(typeof(Storage) !== "undefined") {    // 스토리지가 있다면
		local_id = localStorage.getItem('daishin_id');//로컬스토리지아이디
	}else{  // 스토리지가 없다면
		local_id = getCookie('daishin_id'); //쿠키
	}
	if(local_id == null){
		local_id =  Math.random().toString(36).substr(2, 16); //임의로 ID생성
		if(typeof(Storage) !== "undefined") {
			localStorage.setItem("daishin_id",local_id); //스토리지
		}else{
			setCookie('daishin_id', local_id, 7); //쿠키
		}		
	}

 

 

 


 

세션 스토리지 : window.sessionStorage에 위치한다.

데이터가 영구적으로 보관되지 않는다. 페이지 세션이 종료되면 바로 지워진다.

 

 

 

 

 
 
 
 

 

 

 

 

 

출처 :

https://developer.mozilla.org/ko/docs/Web/API/Window/localStorage

https://developer.mozilla.org/ko/docs/Web/API/Window/sessionStorage

 

 

 

728x90
저작자표시 비영리 (새창열림)

'Web > javascript' 카테고리의 다른 글

[자바스크립트] 함수를 정의할 때 주의할 네 가지  (0) 2019.08.09
[자바스크립트] Javascript를 사용하여 현재 페이지 새로 고침하기  (0) 2018.08.01
[자바스크립트] 자바스크립트 정리  (0) 2018.05.15
[자바스크립트] 모바일 웹일 때 주소창이 사라지게 설정  (0) 2018.05.15
[자바스크립트] 현재 해상도를 얻는 자바스크립트  (0) 2018.05.15

티스토리툴바