JSON

1.json是什么

它是js提供的一种数据交换格式

2.json语法

{}:是对象

属性名必须使用双引号括起来,单引号不行

json值:

null ,数字,字符串,布尔型,数组[]

3.应用json

var person = {"name":"zhangsan","age":18,"sec":"male"};
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>json</title>
<script type="text/javascript">
    window.onload = function() {
        var person = {"name":"zhangsan","age":18,"sex":"male"};
        alert(person.name + "," + person.age + "," + person.sex);
    };
</script>
</head>
<body>

</body>
</html>
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>json</title>
<script type="text/javascript">
    window.onload = function() {
        var str = "{\"name\":\"zhangsan\",\"age\":18,\"sex\":\"male\"}";
        var person = eval("("+str+")");
        alert(person.name + "," + person.age + "," + person.sex);
    };
</script>
</head>
<body>

</body>
</html>
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>json</title>
<script type="text/javascript">
    window.onload = function() {
        var str = "1+2";
        var sum = eval("("+str+")");
        alert(sum);
    };
</script>
</head>
<body>

</body>
</html>

4.一个Json 案例

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>
<script type="text/javascript">
function createXMLHttpRequest() {
    try {
        return new XMLHttpRequest() ;
    } catch (e){
        try{
            return ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                return ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {
                alert("你用的浏览器我实在没办法搞");
                throw e;
            }
        }
    }
}
window.onload = function() {
    var btn = document.getElementById("btn");
    btn.onclick = function() {    //给按钮的点击事件添加监听
        //使用ajax得到服务器响应
        var xmlHttp = createXMLHttpRequest();
        xmlHttp.open("GET","/test1/YServlet",true);
        xmlHttp.send(null);
        xmlHttp.onreadystatechange = function() {
            if(xmlHttp.readyState == 4 && xmlHttp.status == 200){
                //获取服务器的响应结果
                var text = xmlHttp.responseText;
                
                var person = eval("("+text+")");
                
                var s = person.name + " , " + person.age + ", "+ person.sex;
                
                document.getElementById("h3").innerHTML = s;
            }
        };
    }
}
</script>
</head>
<body>
<%--点击按钮之后,把服务器响应的数据显示到h3元素中 --%>
<button id = "btn">点击这里</button>
<h1>JSON之Hello World</h1>
<h3 id = "h3"> </h3>
</body>
</html>

4.json与xml比较

可读性:xml胜出

解析难度:json本身就是js对象,所以json简单

流行度:xml已经流行很多年,但是在Ajax领域,json更受欢迎

Last modification:February 12th, 2020 at 05:40 pm
如果觉得我的文章对你有用,请随意赞赏