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

[Basic] JS - JSON (제이슨) - 데이터 전송 위한 가벼운 자료 형식.

목차
  1. JSON 정의
  2. JSON 예제
  3. JSON 형식은 JS 객체로 평가됨.
  4. JSON 구문 규칙
  5. JSON 데이터 - 이름:값
  6. JSON 객체
  7. JSON 배열
  8. JSON 텍스트를 JS 객체로 변환.

 

JSON 정의

 

데이터 저장/전송 위한 형식임.

보통, 서버에서 웹페이지로 데이터 보내서 표시할 때 사용.

 


 

1.

JSON (JavaScript Object Notation)


2.

가벼운 데이터 교환 형식.


3.

언어 독립적임.

즉, 

JSON 구문은 JavaScript Object Notation 구문에서 파생되었지만, 

JSON 형식은 텍스트 전용임. 

JSON 데이터를 읽고 생성 위한 코드는 모든 프로그래밍 언어로 작성 가능함.


4.

 "자체 설명적'이며, 이해하기 쉬움.

 

 

JSON 예제

※ 3개 기록 갖은 배열. (객체 일종)

 

{

"codes":[

  {"lang":"HTML", "role":"구조"},

  {"lang":"CSS", "role":"다자인"},

  {"lang":"JS", "role":"동적기능"}

]

}

 

 

JSON 형식은 JS 객체로 평가됨.

 

JSON 형식은 JS 객체를 만드는 코드와 구문적으로 동일.

(∴ JS는 JSON 데이터를 순수 JS 객체로 쉽게 변환 가능.)

※ 맨 하단 예제 참고. 

 

 

JSON 구문 규칙

 

1.

데이트는 이름:값 쌍으로 형식.

 

2.

각 데이터는 쉼표(,)로 구분.

 

3. 

담긴 데이터 형식에 따라 괄호 모양 다름.

※ 중괄호( {} )는 객체를 품음.

※ 대괄호( [] )는 배열을 품음.

 

 

JSON 데이터 - 이름:값

 

1.

JS 객체와 마찬가지로, key:value 쌍으로 작성.


2.

JSON 경우, 이름, 값 모두 각각 큰따옴표로 묶음.

(예) "key":"value"

 

cf.

JS객체 경우, 이름은 따옴표로 안 묶음. 

(예) key:"value"

 

 

JSON 객체

 

JSON 객체는 중괄호 안에 작성.

JS처럼, 객체는 여러 이름:값 쌍을 쉼표(,)로 나열 가능.

 


[예제]

 

{"HTML":"구조", "CSS":"디자인"}

 

 

JSON 배열

 

JSON 배열은 대괄호 안에 작성.

JS처럼, 배열은 객체를 포함 가능.

 


[예제] codes 객체는 배열이며, 3개 객체가 포함되어 있음.

 

{

"codes":[

  {"lang":"HTML", "role":"구조"},

  {"lang":"CSS", "role":"다자인"},

  {"lang":"JS", "role":"동적기능"}

]

}

 

 

JSON 텍스트를 JS 객체로 변환.

 

JSON 텍스트를 JSON.parse() 함수 이용해 JS 객체로 변환 가능.

 



<p id="demo"></p>


<script>

var text = '{"codes":[' +

'{"lang":"HTML","role":"구조" },' +

'{"lang":"CSS","role":"디자인" },' +

'{"lang":"JS","role":"동적기능" }]}'; // JSON 문자열.


hz = JSON.parse(text); // (JSON 문자열 → JS 객체) 변환.

 

document.getElementById("demo").innerHTML =

hz.codes[1].lang + " " + hz.codes[1].role;

</script>

 

결과값: CSS 디자인 



분류 제목
String JS - concat() 메서드 ★ - 문자열결합 (= 문자열합치기 = concat메서드 = 컨캣메서드)
String JS - endsWith() 메서드 - 지정문자열로 끝나는지(=종료) 여부 (IE12이상)
String JS - fromCharCode() 메서드 - 유니코드를 문자열로 변환
String JS - includes() 메서드 ★ - 지정문자열포함여부 (= includes메서드 = 인클루드즈메서드)
String JS - indexOf() 메서드(문자열) ★ - 처음일치문자열위치찾기 (= 문자열포함검사 = 인덱스어브메서…
String JS - lastIndexOf() 메서드(문자열) ★ - 마지막일치문자열위치찾기 (= 문자열포함검사 = 라스…
String JS - localeCompare() 메서드 - 문자열순서비교
String JS - match() 메서드 ★ - 일치하는 문자열 반환 (= match메서드 = 매치메서드) ※ 정규식 …
String JS - repeat() 메서드 - 지정횟수만큼 문자열반복 (= 리피트)
String JS - replace() 메서드(String용) ★ - 문자열 대체 (= replace메서드 = 리플레이스…
String JS - search() 메서드 - 문자열위치찾기 ※ 문자열포함검사
String JS - slice() 메서드 - 문자열 자르기 (= 문자열 일부 추출 = slice메서드 = 슬라이스 메서…
String JS - split() 메서드 - 문자열 쪼개기 (= split메서드 = 스플릿 메서드) ※ 이메일숨기기 (…
String JS - startsWith() 메서드 - 지정문자열로 시작 여부 (IE12이상)
String JS - substr() 메서드 ★ - 문자열 자르기 - 문자열의 특정 위치 이후의 특정 길이 만큼 반환
String JS - substring() 메서드 ★ - 문자열 일부 추출 (= 문자열 자르기 = substring메서드…
String JS - toLocaleLowerCase() 메서드 - 로캘 소문자로 변환
String JS - toLocaleUpperCase() 메서드 - 로캘 대문자로 변환
String JS - toLowerCase() 메서드 - 소문자로변환
String JS - toString() 메서드 (문자열경우) - 문자열타입으로 변경 (= toString메서드 = 투스…
6/67
목록
찾아주셔서 감사합니다. Since 2012