在数据传输流程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键。例如:
JSON字符串:
var str1 = '{ "name": "cxh", "sex": "man" }';
JSON对象:
var str2 = { "name": "cxh", "sex": "man" };
下面说下今天遇到的问题,java后台传递参数到前台jsp中的js,一直无法取到,查找原因发现是 不该写双引号 ""
js代码写在了jsp当中,下面的代码是错误的代码,无法取到json数据,代码如下:
错误代码如下(千万不要这么写):
<script type="text/javascript">
var aa = "<%=request.getAttribute("testTypeJson")%>";
alert(aa);
</script>
取得json字符串的代码:
<script type="text/javascript"> var aa = '<%=request.getAttribute("testTypeJson")%>'; alert(aa); </script>
运行截图:
获得json对象的代码:
<script type="text/javascript">
var aa = <%=request.getAttribute("testTypeJson")%>;
alert(aa);
alert(aa.key1);
</script>
运行截图: