-

Javascript 데이터 객체와 JSON 생성 방법 본문

CS Language Note/Javascript

Javascript 데이터 객체와 JSON 생성 방법

Boogallee 2020. 9. 2. 21:18

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