Javaweb学习之JSON使用

学习目的

  1. 了解JSON的基础概念和作用
  2. 掌握JSON的基础使用
  3. 掌握JSON在实

一、JSON入门

  1. 概念
    JSON全称JavaScript Object Notation,意为JavaScript对象标记,简称JSON。JSON本质是一种标准的数据交换格式,是目前市场上非常流行,90%以上的系统采用的交换数据的格式(不同编程语言之间进行数据交换的格式)。JSON也可以称为无类型对象,轻量级、轻巧、体积小、易解析。

  2. 特点

  • JSON是一种标准的轻量级的数据交换格式,其体积小,易解析;
  • JSON在JS中以JS对象的形式存在;
  • java后端与浏览器前端进行数据交互的"工具"就是JSON,java获取的数据以字符串格式返回到浏览器,浏览器中的JS将字符串数据封装成JSON格式对象进行解析展示
  1. JSON与XML
    在实际的开发中有两种常用数据交换格式使用最多,其一是JSON,另一个是XML。
    XML体积较大,解析麻烦,但是有其优点是:语法严谨。(通常银行相关的系统之间进行数据交换使用XML)
// XML定义对象
 

    
        张三
        24
        
    
    
        里斯
        21
        
    
    
        王五
        20
        
    

  1. JSON的语法格式
// 创建JSON对象:JSON也可以称为无类型对象
var jsonObj = {
    "属性名" : 属性值,
    "属性名" : 属性值,
    "属性名" : 属性值,
    "属性名" : 属性值,
    ....
};
  1. 示例
// 定义传统JS对象
Student = function(sno,sname,sex){
        this.sno = sno;
        this.sname = sname;
        this.sex = sex;
}
// 创建对象
var stu = new Student("111","李四","男");
// 访问JS对象的属性
alert(stu.sno + "," + stu.sname + "," + stu.sex);

// 定义:JSON格式对象,对象定义与创建合并
 var studentObj = {
        "sno" : "110",
        "sname" : "张三",
        "sex" : "男"
  }
// 访问JSON对象的属性
alert(studentObj.sno + "," + studentObj.sname + "," + studentObj.sex);;
  1. JSON数组
    在目前的开发中,所有流行的编程语言用于数据交换的格式都是JSON。而在JAVA中,数据是以对象的形式存在的,当java中的多个对象返回给浏览器时,通常JS采用JSON数组的形式存储java返回的多个数据。
// []代表的是一个数组,{}代表的是一个JSON对象
var students = [
    {"sno":"110","sname":"张三","sex":"男"},
    {"sno":"120","sname":"李四","sex":"男"},
    {"sno":"130","sname":"王五","sex":"男"}
];

1.1 eval函数

  1. 描述
    eval函数是可以将JS中的字符串当做一段JS代码解释并执行的函数。

  2. 应用场景
    在java连接数据库进行查询数据之后,会将查询得到的数据在java程序中拼接成JSON格式的“字符串”,再将json格式的字符串返回到浏览器。因此java返回到浏览器上的仅仅是一个"JSON格式的字符串",而不是一个json对象,浏览器需要使用eval函数 将json格式的字符串转换成json对象才能完整的展示返回的数据。

  3. 格式

 window.eval("字符串" );
  1. 示例
// var i = 100;原本是普通字符串,但用在js中则是定义变量
window.eval("var i = 100;");
alert("i = " + i); // i = 100

// 将json格式的字符串转换成json对象,\为转义符
var fromJava = "{\"name\":\"zhangsan\",
                 \"password\":\"123\",
                 \"sex\":\"男\"}"; // java发给浏览器的json格式"字符串"
// 将以上json格式字符串转换成json对象
window.eval("var jsonObj = " + fromJava);
// 访问json对象,浏览器端执行输出
alert(jsonObj.name + "," + jsonObj.password);

1.2 JSON数据与表格

  1. 描述
    在JS中,java后台发送到前端浏览器的数据通常存储在JSON对象中,而JS常用的解析方式就是将JSON数据解析完成后 动态显示在中。
  2. 示例
  3. 
            
            

    员工信息列表


    员工编号 员工名字 员工薪资
    总共0条数

    常见面试题

    1. 在JS当中:[]和{}有什么区别?
    • [] 描述的是数组对象。
    • {} 描述的是JSON格式对象。

你可能感兴趣的:(Javaweb学习之JSON使用)