본문 바로가기

Dev. Front-End/JavaScirpt

[Javascript] JSON객체와 메소드 (문자열 변환)

 

 

 

 

JSON 객체

: ECMAScript 5 부터는 정식으로 JSON객체를 지원합니다.

JSON은 자바스크립트 객체의 형태를 갖는 문자열을 말합니다.

 

JSON객체의 메소드

* JSON.stringfy() : 자바스크립트 객체를 JSON문자열로 변환합니다.

* JSON.parse() : JSON문자열을 자바스크립트 객체로 변환합니다.

 

 

 

<script type="text/javascript">
	//변수 선언
	var object = {
			name: '종알이',
			region : '서울'
	};
	
	alert(JSON.stringify(object));
</script>

 

 

 

위 코드를 실행하면 객체의 속성과 값을 쉽게 확인할수 있습니다.

object라는 객체를 생성하고 이 객체를 stringify메소드를 통해서 string형태로 변환시켜서 출력됩니다.

 

 

 

 

 

<script type="text/javascript">
	//변수 선언
	var object = {
			name: '종알이',
			region : '서울'
	};
	
	var copy = JSON.parse(JSON.stringify(object));
	//출력
	alert(copy.name+' : '+ copy.region);
	</script>

 

 

 

 

 

parse()메소드는 JSON문자열 자바스크립트 객체로 바꾸는 역할을 수행합니다. 즉, 객체를 생성하고 JSON문자열을

변경하고 다시 객체로 변경합니다.

 

 

 

 

 

 

<script type="text/javascript">
		//변수 선언
		var object = {
			name : 'object',
			prop : 'object',
			toJSON : function() {
				return {
					custom : 'custom'
				};
			}
		};

		alert(JSON.stringify(object));
	</script>

JSON.stringify()메소드의 매개변수에 넣은 객체에 toJSON()메소드가 없다면 객체 전체를 JSON으로 변환합니다.

 

 

 

반면 toJSON()메소드가 있다면 toJSON()메소드에서 리턴한 객체를 JSON으로 변환합니다.