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

[JSON] JS - JSON - Introduction (소개)

JSON 소개

[정의]

 

1. 

JSON : JavaScript Object Notation (JS 객체 명세서)

(예) var myJSON = '{"site":"홈짱닷컴 ", "domain":"Homzzang.com", "year":2012}'; // JSON 포맷

 

2. 

데이터 저장 및 교환 위한 구문.

 


[데이터 교환 시 주의사항]

 

1. 

서버와 브라우저간 데이터 교환은 오직 텍스트 형태로만 가능.

 

2. 

JSON은 텍스트임.

 

3. 

어떤 JS 객체든 JSON으로 변환해 서버로 전송 가능하며,

서버에서 전송받은 어떤 JSON이든 JS 객체로 변환 가능.

이런 방법을 통해서,
복잡한 파싱 및 번역 없이 데이터를 JS 객체로 처리 가능.     

 

 

 

예제1 - JS 객체를 JSON 포맷으로 변환해 서버로 보내기

/send.php 소스

 

<script>

var myObj = {site: "홈짱닷컴", since: 2012, domain: "Homzzang.com"}; // JS 객체

var myJSON = JSON.stringify(myObj); // JSON 포맷

window.location = "homzzang.php?x=" + myJSON;

</script> 

 


/homzzang.php 소스

 

<?php

$x = $_GET['x'];

?>


<div id='hz'></div>


<script>

var myJSON = '<?php echo $x;?>'; // JSON 포맷

var myObj = JSON.parse(myJSON) // JS 객체

document.getElementById("hz").innerHTML = myObj.site + " " + myObj.domain + " Since " + myObj.year;

</script>


 

 

예제2 -  JSON 포맷을 JS 객체로 변환하기

 

<p id="homzzang"></p>


<script>

var myJSON = '{"site":"홈짱닷컴 ", "domain":"Homzzang.com", "year":2012}'; // JSON 포맷

var myObj = JSON.parse(myJSON); // JS 객체

document.getElementById("homzzang").innerHTML = myObj.site;

</script>

 

결과보기

 

 

예제3 - JS 객체를 text 형식으로 저장 후 불러오기

 

<p id="hz"></p>


<script>

var myObj, myJSON, text, obj;


// Storing data:

 

var myObj = { site: "홈짱닷컴", since: 2012, domain: "Homzzang.com" }; // JS 객체

myJSON = JSON.stringify(myObj);

localStorage.setItem("saveJSON", myJSON);


// Retrieving data:

text = localStorage.getItem("saveJSON");

obj = JSON.parse(text);

document.getElementById("hz").innerHTML = obj.site;

</script>


결과보기

※ 데이터를 저장할 때 특정 형식을 갖춰야 하는데, text 형식은 항상 적합한 형식 중 하나임.

※ JSON은 JS코드를 text 형식으로 저장가능.

 

 

JSON 소개

 

1,

JSON (= JavaScript Object Notation)

 

2.

JSON은 간단한 데이터 교환 형식임.

 

3.

JSON은 자기서술 (= 자신 설명)적이라 이해하기 쉬움.

4.
JSON은 언어와 무관함.
JSON은 JavaScript 구문 사용하지만 JSON 형식은 텍스트만 사용. 

텍스트는 모든 프로그래밍 언어에서 데이터 형식으로 읽고 사용 가능.

 

※ JSON 형식은 원래 Douglas Crockford에 의해 구체화 됨.

 

 

JSON 사용 이유

 

JSON 형식은 텍스트 형식이므로 서버와 주고받을 수 있으며 모든 프로그래밍 언어에 의해 데이터 형식으로 가능.

JS에는 JSON 형식으로 작성된 문자열을 기본 JS 객체로 변환하는 기능이 내장되어 있음.

JSON.parse()

따라서, 서버에서 JSON 형식 데이터 받는 경우 JS 객체처럼 사용 가능.

 

 

 

PS.

[강의]

 

엘리 님 (10. JSON) 강의

https://youtu.be/FN_D4Ihs3LE

 

모질라 (JSON) 강의

https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Objects/JSON

 

JS (JSON) 강의

https://javascript.info/json (영어 버전)

https://ko.javascript.info/json (한국어 버전)

 


[웹툴]

 

JSON Diff 

http://www.jsondiff.com/

 

JSON Beautifier

https://jsonbeautifier.org/

 

JSON Parser

https://jsonparser.org/

 

JSON Validator

https://tools.learningcontainer.com/json-validator/

 



분류 제목
DOM JS - CSS - 스타일변경
DOM JS - Animation - 애니메이션 (= 동적효과 = 움직임효과)
DOM JS - Events - 이벤트 2
DOM JS - addEventListener() 메서드 ★★★★★ - 이벤트 걸기 (= addEventListen…
DOM JS - Navigation - 노드탐색 (= 요소탐색) ※ 텍스트노드복사
DOM JS - Node - 노드추가, 노드삭제, 노드변경 (= 노드생성, 노드제거, 노드교체)
DOM JS - Collection - HTML요소집합 (= HTML요소묶음)
BOM JS - Window BOM - 윈도우 브라우저객체모델 (BOM: Browser Object Model)
BOM JS - Window Screen 객체 - 화면객체 (= 스크린객체 = screen객체)
BOM JS - Window Location 객체 - 위치객체 (= 로케이션객체 = Location객체) ※ loc…
BOM JS - Window History 객체 - 이력객체 (= 히스토리객체 = History객체 = 뒤로가기 +…
BOM JS - Window Navigator 객체 - 브라우저객체 (= 네이게이터객체 = Navigator객체 =…
BOM JS - Popup Boxes - 팝업상자 (= 팝업박스 = Alert Box + Confirm box + …
BOM JS - Timing Events ★ - 시간간격 코드실행 (= 타이밍 이벤트 = 시간이벤트 = 일정시간별 …
BOM JS - Cookie (쿠키) 사용법 ★★★ - 쿠키 (설정・생성) / 쿠키 (읽기・얻기・가져오기) / 쿠…
AJAX JS - AJAX (아작스) 소개
AJAX JS - AJAX - XMLHttpRequest() 메서드 ★ - 객체생성 (= 아작스/에이잭스 핵심 = X…
AJAX JS - AJAX - open()/send() 메서드 ★ - 서버에 요청 보내기 (GET방식 vs POST방…
AJAX JS - AJAX - Server Response (서버응답) - 콜백함수 사용 예제
AJAX JS - AJAX - XML 아작스 예제 (= xml 데이터 불러와 표만들기)
4/67
목록
찾아주셔서 감사합니다. Since 2012