AngularJS fromJson, toJson 사용법

■ 참조

■ angular.toJson 객체를 문자열로 변환(serialize)하고, angular.fromJson은 json형태의 문자열을 json객체로 변환(deserialize)한다. AngularJS는이 표기법을 내부적으로 사용하기 때문에 선행하는 $$ 문자로 된 특성은 제거된다.

var source = {
name: 'Richard',
likes: {
    fruit: [
        'apples', 'bananas', 'grapefruit']
	}
};

var toJson = angular.toJson(source);
console.log(toJson);
console.log(angular.isString(toJson));  		//  true
console.log($scope.toJson.likes.fruit[1]);  	//  TypeError: Cannot read property 'fruit' of undefined

var fromJson = angular.fromJson(toJson);
console.log(fromJson);
console.log(angular.isString(fromJson));  //  false
console.log(fromJson.likes.fruit[1]);  	 //  bananas
  • 라인 9 : source 객체를 문자열로 변환(serialize) 한다.
  • 라인 10 : 콘솔 결과는 문자열을 보여준다.
  • 라인 11 : 문자열이므로 결과는 true.
  • 라인 12 : 문자열을 참조했으므로 TypeError 발생한다.
  • 라인 14 : 문자열을 다시 JSON 객체(Object)로 변환(Deserialize)한다.
  • 라인 15 : 콘솔 결과창에서는 객체(Object)를 보여준다.
  • 라인 16 : 객체이므로 결과는 false
  • 라인 17 : 객체를 참조했으므로 결과는 ‘bananas’
toJson, fromJson 실행결과