프로그래밍 언어와 기술/JavaScript

[JavaScript] localStorage

tero1115 2023. 7. 12. 15:25

로컬스토리지

 - 데이터 저장
 - key value가 필요하다
 - key value 모두 문자열이어야만 한다
 - (객체를 사용할 수 없다)

    <script>
        // 로컬 스토리지
        localStorage.setItem("theme", "light")
    </script>

 

이런식으로 넣으면 값이 들어가지 않는다.

        const obj = {
            name: "홍길동",
            age: 12
        };

        localStorage.setItem("theme", obj);

 

 

JSON 형태로 넣으면 넣어진다.

 - json( 자바스크립트 객체 형태의 문자열 )

 - localStorege는 문자열 형태로만 받는다. (객체 X)

        // json - 자바스크립트 객체 형태의 문자열 
        const objJson = JSON.stringify(obj); 

        localStorage.setItem("theme", objJson);

 

* localStorege는 문자열 형태로만 받는다. (객체 X)


JSON을 쓰는 이유

현재 다양한 언어들이 있다
ex) 자바, 자스, 파이썬, 다트 , c#
자바의 객체는 자바스크립트의 객체로 사용할 수 없다
중간에서 공통적으로 사용할 수 있는 데이터가 필요
자바 객체 -> 문자열(JSON) -> 자바스크립트 객체
C# 객체 -> 문자열(JSON) -> 파이썬 객체