jsはどのようにjsonフォーマット文字列を解析します


jsonは一般的なデータ転送フォーマットです.jsはどのようにjsonフォーマットのデータを解析しますか.次のコードを参照してください.
<html>
	<head>
		<script type="text/javascript">
			var data = '{"return_code":0,"return_message":"success","data":{"data":[{"id":"1","question":"       ?"},{"id":"2","question":"        ?"},{"id":"3","question":"     ?"},{"id":"4","question":"      ?"},{"id":"5","question":"       ?"},{"id":"6","question":"        ?"},{"id":"7","question":"      ?"},{"id":"8","question":"        ?"},{"id":"9","question":"     ?"},{"id":"10","question":"        ?"}]}}';

			function ShowData(){		

				var obj = eval("("+data+")");		

				alert("return_code:"+obj["return_code"]);
				alert("return_message:"+obj["return_message"]);
				alert("     id:" + obj["data"]["data"][0]["id"]);
				alert("     id:" + obj["data"]["data"][0]["question"]);
			}

		</script>
	</head>

<body onload="ShowData();">
	{"return_code":0,"return_message":"success","data":{"data":[{"id":"1","question":"       ?"},{"id":"2","question":"        ?"},{"id":"3","question":"     ?"},{"id":"4","question":"      ?"},{"id":"5","question":"       ?"},{"id":"6","question":"        ?"},{"id":"7","question":"      ?"},{"id":"8","question":"        ?"},{"id":"9","question":"     ?"},{"id":"10","question":"        ?"}]}}

</body>

</html>

上のコードをShowJsonDataとして保存します.html、ブラウザで開くと、解析後のデータの一部が表示されます.
主に使用する関数evalは、jsonフォーマット文字列を逆シーケンス化します.
jsonの詳細は、json公式サイトを参照してください.