• 회원가입
  • 로그인
  • 구글아이디로 로그인

[Window_Object] JS - localStorage 속성 - 웹브라우저에 키/값 쌍을 데이터 영구저장 (IE8 이상) ※ 쿠키 대용 (= 토글 효과 지속・유지)

※ 결과보기 클릭 시 정상 작동 X (※ 홈페이지에 코드 넣고 크롬에서 확인하면 정상 출력)


localStorage 예제 - 저장 후 불러오기

 

<div id="hz"></div>


<script>

// 브라우저 지원 체크

if (typeof(Storage) !== "undefined") {

     // 키/값 짝으로 저장

    localStorage.setItem("host", "Homzzang.com");

 

    // name으로 탐색해 출력

    document.getElementById("hz").innerHTML = localStorage.getItem("host"); 

 

} else {

 

    document.getElementById("hz").innerHTML = "Web Storage 지원 X";

 

}

</script>

 

결과보기 (지원 브라우저 경우 결과값: Homzzang.com)

 

window.localStorage 정의 

 

웹 브라우저에 키/값 쌍을 저장 가능. 

 


 

※ localStorage 속성은 window 객체의 속성 중 하나. 따라서, 앞에 window 안 붙여도 됨.

 

1.

localStorage 객체는 만료 날짜가 없는 데이터를 저장. 

브라우저 닫아도 데이터 삭제 안 되며 다음 (날・주・연도)에 사용 가능.

 

2.

localStorage 속성은 읽기 전용.


cf.

sessionStorage 속성 : 세션 데이터 저장.  (※ 브라우저 탭 닫으면 데이터 손실 됨) 

 

3.

IE8 이상 주요 최신 브라우저 모두 지원.

 

 

window.localStorage 구문 

 

window.localStorage

 

데이터를 localStorage에 저장

localStorage.setItem("key", "value");

 

localStorage에서 데이터 읽기

var host = localStorage.getItem("key");

 

localStorage에서 데이터 제거

localStorage.removeItem("key");

 


[반환값]

 

스토리지 객체.

 

 

localStorage 예제 - 클릭 횟수

※ 브라우저 닫아다 다시 열어도 이어서 클릭 횟수 증가

 

<script>

function clickCounter() {

    if(typeof(Storage) !== "undefined") {

        if (localStorage.clickcount) {

            localStorage.clickcount = Number(localStorage.clickcount)+1;

        } else {

            localStorage.clickcount = 1;

        }

        document.getElementById("result").innerHTML = "버튼 클릭 횟수: " + localStorage.clickcount + " 회";

    } else {

        document.getElementById("result").innerHTML = "web storage 지원 X.";

    }

}

</script>


<p><button onclick="clickCounter()" type="button">클릭</button></p>

<div id="result"></div>


결과보기


 

localStorage 예제 - 토글 효과 지속

 

<script src="http://code.jquery.com/jquery-latest.js"></script>

 

<div id="bo_list" style="display:block">bo_list</div>

<button id="toggle">toggle</button>


<script type="text/javascript">

$(document).ready(function() {

    $('#toggle').click(function() {

        if ($("#bo_list").css("display") == "none") {

            $('#bo_list').css("display", "block");

            localStorage.setItem("bo_list", "block");

        } else{

            $('#bo_list').css("display", "none");

            localStorage.setItem("bo_list", "none");

        }                

        console.log("set: " + $('#bo_list').css("display"));

    });

    var display = localStorage.getItem('bo_list');

    ($("#bo_list").css("display", display));

    console.log("get: " + display);

});

</script>

 

결과보기

취미생활 님 (200525) https://sir.kr/qa/360619



분류 제목
HTML_Objects JS - <address> 객체 - 연락처 (= address태그 = address요소 = 어드레스태그)
HTML_Objects JS - <area> 객체 - 이미지맵 링크 영역 (= area태그 = 에어리어태그) (HTML5수정)
HTML_Objects JS - <article> 객체 ★ - 자족적인 독립콘텐츠 (= 아티클태그 = article태그. IE9)
HTML_Objects JS - <aside> 객체 ★ - 관련별도콘텐츠표시 (= 부가콘텐츠 = 어사이드태그 = aside태그) (…
HTML_Objects JS - <audio> 객체 ★ - 음성파일재생 (=오디오태그 = audio태그) ※ 음성파일형식별로 브라우…
HTML_Objects JS - <b> 객체 ★ - 굵은글씨 (= b태그 = b요소 = 폰트굵기 = 비태그 = 볼드태그 = bol…
HTML_Objects JS - <base> 객체 - 상대주소 기본 URL/타켓 지정 (= base 태그 = 베이스 태그)
HTML_Objects JS - <bdo> 객체 - 텍스트출력방향 (= bdo태그 = bdo요소 = 글자방향 = 브도태그 = 비도태…
HTML_Objects JS - <blockquote> 객체 ★ - 긴 인용구 (= blockquote태그 = blockquote요…
HTML_Objects JS - <body> 객체 ★ - 문서영역 (= body태그 = body요소 = 본문영역 = 바디태그 = 보…
HTML_Objects JS - <br> 객체 ★ - 줄바꿈 (=br태그 = br요소 = 한줄아래로 = 비알태그 = 브르태그 = 브…
HTML_Objects JS - <button> 객체 ★ - 클릭버튼 (= button태그 = 버튼태그) (HTML5수정)
HTML_Objects JS - <canvas> 객체 - 그림그리기 (= canvas태그 = 캔버스태그) (IE9 이상. HTML추…
HTML_Objects JS - <caption> 객체 - 테이블제목 (= 표제목 = caption태그 = 캡션태그) (HTML5 …
HTML_Objects JS - <cite> 객체 - 인용구 제목 (= cite태그 = cite요소 = 저작물제목 = 인용태그 = …
HTML_Objects JS - <code> 객체 - 컴퓨터소스코드 출력 (= code태그 = 코드태그)
HTML_Objects JS - <col> 객체 - 테이블열그룹 (= col태그 = 콜태그) (HTML5 수정)
HTML_Objects JS - <colgroup> 객체 - 테이블의 col태그묶음 (= colgroup태그 = 콜그룹태그, HTM…
HTML_Objects JS - <datalist> 객체 - 입력가능값리스트 (= datalist태그 = 데이터리스트태그) (IE1…
HTML_Objects JS - <dd> 객체 - 항목세부설명 (= dd태그 = 디디태그)
55/67
목록
찾아주셔서 감사합니다. Since 2012