-
Javascript 데이터 객체와 JSON 생성 방법 본문
Javascript 데이터 객체와 JSON 생성 방법
1. JSON 정의
- JSON은 경량(Lightweight)의 DATA-교환 형식
- Javascript에서 객체를 만들 때 사용하는 표현식을 의미한다.
- JSON 표현식은 사람과 기계 모두 이해하기 쉬우며 용량이 작아서, 최근에는 JSON이 XML을 대체해서 데이터 전송 등에 많이 사용한다.
- 특정 언어에 종속되지 않으며, 대부분의 프로그래밍 언어에서 JSON 포맷의 데이터를 핸들링 할 수 있는 라이브러리를 제공한다.
- 클라이언트와 서버가 간에 정보를 교환하기 위한 데이터 형태
2. Java Script와의 관계
자바스크립트의 모든 변수들은 참조 변수이다.
var n = new Number(3);
var n = new Boolean(true);
var s = new String("hello");
var ar = new Array();
var obj = new Object();
var 변수에 대입하는 개념이 아니라, 초기화된 데이터를 참조하겠다는 의미의 선언이다.
해당 코드들을 JSON으로 표기한다면 아래와 같다.
var n = 3;
var n = true;
var s = "hello";
var ar = [];
var obj = {};
JSON에서 가장 많이 사용되는 데이터 타입이 Object 타입인것 같다.
var obj = {"프로퍼티" : 값};
var obj = {"id" : "user_id", "pw" : 1234 , "data": data_array};
// Property 안에는 배열 혹은 또 다른 객체를 포함시킬 수 있다.
3. Java Script 데이터 객체
1) 데이터 객체 & Wrapper 클래스
- var 로 정수/실수/문자/문자열을 모두 담을 수 있는 이유?
--> 자바스크립트는 모두 참조 변수 개념으로 사용
--> 포인터와는 다르다(참조 변수는 단지 이름, 포인터는 주소를 저장)
--> 참조 변수는 객체지향 개념때문에 생겨난것. 객체의 각 개체(Entity) 하나하나 이름을 부여하기 위함.
--> 변수가 사용될 때 스스로 공간을 할당(Autoboxing). var 변수가 해당 공간을 참조
- JS는 기본 형식이라는게 없고 모두 Wrapper 클래스만 가지고 있다.
--> Wrapper 클래스는 기본 데이터 타입이 Boolean / Number(정수+실수) / String(문자 + 문자열) 으로 구분 됨
1. var x = 3;
2. var x = new Number(3); // Wrapping이 됨
1과 2는 동일한 문법
3. var x; // 이렇게만 선언한다면?
4. alert(z); // undefined 라고 출력됨 (undefined는 문자열이 아닌 키워드)
--> 객체를 참조해야하는데 아직 참조되지 않았기에 Undefined. 나중에 값을 할당할 때 참조됨.
var x = 3;
var x = new Number(3); // Wrapping이 됨
var x; // 이렇게만 선언한다면?
alert(z); // undefined 라고 출력됨 (undefined는 문자열이 아닌 키워드)
//객체를 참조해야하는데 아직 참조되지 않았기에 Undefined. 나중에 값을 할당할 때 참조됨.
'CS Language Note > Javascript' 카테고리의 다른 글
자바스크립트 연산자(=== 와 ==의 차이) (0) | 2020.09.02 |
---|---|
JSON 파서란? (0) | 2020.09.02 |
eval 함수를 이용한 JSON 파싱 (0) | 2020.09.02 |
자바스크립트 배열 (0) | 2020.09.02 |
Comments