이번에는 JSON객체에 대해 알아보자.
JSON( JavaScript Object Notaion ) 약자로서 그냥 자바스크립트 객체라고 보면된다.
이는 데이터를 전달하기 위한 표준으로 형식은 키와 값이 쌍으로 이루어져 있다.
특히 비동기 브라우저/서버 통신인 AJAX(Asynchronous JavaScript and XML)를 위해 사용한다.
이름 그대로 원래는 JavaScript형식을 따르지만 독립적 데이터 형식이다.
따라서 다른 프로그래밍 언어에 독립적이므로 각종 프로그래밍 언어에서 쉽게 사용 할 수 있다.
또한 자바스크립트에서 eval명령으로 곧바로 사용 가능하다.( 그러나, 악성 코드 유입가능성있음 )
그래서 웹 환경에서 유용하게 사용 가능하다.
이런 특성을 이용하여 이기종간의 데이터 통신을 JSON형식으로 넘기고 JSON형식 주고 받는다.
( 혹은 이런특성인 XML도 있지만 JSON형식이 가독성도 높고 효율적이다. )
xml
=========
<list>
<item id="hello"> world </item>
</list>
json
==========
{
list : [{ id:"hello", value:"world" }]
}
# 형식 / 자료형
숫자, 문자열, boolean, Array(배열), Object(객체) 의 자료형을 가진다.
숫자 정수 123 -112 실수(고정 소수점) 3.14 -3.15 실수(부동 소수점) 1e2 87e-5 문자열( "" 필수 ) "1234" "joo" "문자" 배열( [] 필수 ) [10, 20, {"id" : "joo1234"}, [ 30, "사십"]] 객체( { } 필수 ) {"id" : "joo1234" , "pw" : 1234 }
그리고 JSON형식은 { 로 시작해서 } 로 끝난다( 마지막에 ; 필요없음 )
또한 작성된 JSON이 형식에 맞는지 검증하는 사이트는 다음과 같다.
# JSON객체화 <-> 문자화
var str = '{ list : [{ id:"hello", value:"world" }] }'
# 객체화1
var data = eval(str);
# 객체화 2
var data = JSON.parse(str);
document.write(data.list.id); // json문자를 객체화하여 접근
# 문자화 ( 위 반대 )
//JSON.stringify(객체);
document.write( JSON.stringify(data) ); // json객체을 string형식으로 출력해줌
'JavaScript' 카테고리의 다른 글
테이블 정렬(오름/내림) + 테이블체크박스(ALL) (0) | 2019.03.04 |
---|---|
meta (0) | 2019.03.04 |
내장객체 (0) | 2019.03.04 |
String, Math, Date, Array 객체들의 메서드 (0) | 2019.03.04 |
객체 (0) | 2019.03.04 |