본문 바로가기

XML & JSON

JSON // 기본 (String <--> Json 호환)

JSON : Java Script Object Notation
표기법
Array -> Json(배열의 가독성 보안)

한쌍(pair) key:value == HashMap(java)


Web(Client) Java(Server) < -통신- > DB
Json --------- > List, HashMap, Object, String
key.변수명

Json으로 받았을때, Ajax 사용많음

 

 

 

 


String -> Json

xhttp.onreadystatechange = function () {
	if (xhttp.readyState == 4 && xhttp.status == 200) {
		jsonFunc(xhttp.responseText);
	}
}
xhttp.open("GET", "jsondata.json", true);
xhttp.send();

function jsonFunc(resp) {
	/* json 데이터로 바꿈 */
	let arr = JSON.parse(resp);
   }

Json -> String

	let str = JSON.stringify(jsonObj);

 

 


 

<body>
 <p id="demo"></p>
 <script type="text/javascript">
 let jsonData = [
				{
					"name":"홍길동",	
					"age":24
				},
				{
					"name":"일지매",	
					"age":21
				},
				{
					"name":"성춘향",	
					"age": 16
				}
				];
 
 /* 배열 obj를 출력하는 법 */
//document.getElementById("demo").innerHTML = jsonData[0].name;
//document.getElementById("demo").innerHTML = jsonData[1].name+" "+jsonData[1].age;//답 :일지매 21
 
 /* Json이 아닌 String*/
 	let arrText = '{"name":"홍길동", "age":24, "주소":"서울시"}';
document.getElementById("demo").innerHTML = arrText.name; 
 
 /* Json */
	let arrText = {"name":"홍길동", "age":24, "주소":"서울시"};
document.getElementById("demo").innerHTML = arrText.name; 
 
 
 /* String -> Json으로 바꾸기 */
	let arrText = '{"name":"홍길동", "age":24, "주소":"서울시"}';
	let jsonObj = JSON.parse(arrText);	
	alert(arrText); //문자열 전체 그대로 출력
	alert(jsonObj);
	//가져온 문자열에서 값을 취득하기
	document.getElementById("demo").innerHTML = jsonObj.name+" "+jsonObj.age; 
 
	
/* Json -> String으로 바꾸기 */
	let arrText = '{"name":"홍길동", "age":24, "주소":"서울시"}';
	let jsonObj = JSON.parse(arrText);	
	alert(jsonObj); //obj라고 뜸
	let str = JSON.stringify(jsonObj);
	alert(str);	//arrText그대로 뜸
 
	document.getElementById("demo").innerHTML = jsonObj.name+" "+jsonObj.주소;
 
</script>
</body>