资讯专栏INFORMATION COLUMN

JSON应知应会

Flink_China / 2228人阅读

摘要:两种格式对象对象是一个无序的名称值对集合。数组数组是值的有序集合。值之间使用逗号分隔。这两个方法分别用于把对象序列化为字符串和把字符串解析为原生值方法用于将字符串转化成对象对应的表示利用将对象转换成字符串

JSON简介

简介:
JSON(JavaScriptObject Notation)、轻量级数据交换格式、非常适合于服务器与 JavaScript 的交互。

JSON两种格式:

1、对象
对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。

var person = { "name":"huochai", "age":29, "school":{ "name":"diankeyuan", "location":"beijing" }};

2、数组
数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。

var students =  
              [  
                     {"sno":"001","name":"jack","age":130},  
                     {"sno":"002","name":"tame","age":120},  
                     {"sno":"003","name":"cule","age":110},  
              ];  

一些JSON实例

        var person = { "name":"huochai", "age":29, "school":{ "name":"diankeyuan", "location":"beijing" }};
        var strJson = "{ "name":"huochai", "age":29, "school":{ "name":"diankeyuan", "location":"beijing" }}";
        var aa = "abc";
        var bb = ["baidu","taobao"];
        var cc = {"persons": ["zhangsan","lisi"]};
        var students =
                [
                    {"sno":"001","name":"jack","age":130},
                    {"sno":"002","name":"tame","age":120},
                    {"sno":"003","name":"cule","age":110},
                ];

        var personOther = JSON.parse(strJson);

        alert(personOther.age);
JSON对象

  JSON之所以流行,是因为可以把JSON数据结构解析为有用的javascript对象

  ECMAScript5对解析JSON的行为进行了规范,定义了全局对象JSON

  JSON对象有两个方法:stringify()和parse()。这两个方法分别用于把JavaScript对象序列化为JSON字符串和把JSON字符串解析为原生JavaScript值

stringify()
var strPerson = JSON.stringify(person);
alert(strPerson);
var strStudents = JSON.stringify(students);
alert(strStudents);
parse()

  JSON.parse方法用于将JSON字符串转化成对象

var strPerson = JSON.stringify(person);
var personObj = JSON.parse(strPerson);
var strStudents = JSON.stringify(students);
var studentsObj = JSON.parse(strStudents);

对应的java表示:

public class Person {
    public String name;
    public int    age;
    public School school;
}
public class School {
    public String name;
    public String location;
}

利用fastjson将java对象转换成JSON字符串

        Person person = new Person();
        person.name = "huochai";
        person.age = 29;
        person.school = new School();
        person.school.name = "diankeyuan";
        person.school.location = "beijing";


        String strJson = JSON.toJSONString(person);
        System.out.println(strJson);

        Person person2 = new Person();
        person2.name = "huochai2";
        person2.age = 292;
        person2.school = new School();
        person2.school.name = "diankeyuan2";
        person2.school.location = "beijing2";

        List lst = new ArrayList();
        lst.add(person);
        lst.add(person2);


        String strJson2 = JSON.toJSONString(lst);
        System.out.println(strJson2);

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/70624.html

相关文章

  • JSON应知应会

    摘要:两种格式对象对象是一个无序的名称值对集合。数组数组是值的有序集合。值之间使用逗号分隔。这两个方法分别用于把对象序列化为字符串和把字符串解析为原生值方法用于将字符串转化成对象对应的表示利用将对象转换成字符串 JSON简介 简介:JSON(JavaScriptObject Notation)、轻量级数据交换格式、非常适合于服务器与 JavaScript 的交互。 JSON两种格式: 1、对...

    lijy91 评论0 收藏0
  • Babel 配置工程师应知应会

    摘要:,标题党了,本文仅介绍相关生态和一些配置心得。函数是在时候常用的工具函数,对编译模块时,会将用到的放到模块顶部。用来看最终引入了哪些必须配合,貌似加入了此项以后,会得到类似于的效果。 Babel Sorry,标题党了,本文仅介绍 Babel 相关生态和一些配置心得。 Babel 各个 package 的用途 babel-core: 核心部分 babel-cli: 允许使用命令行 ...

    caikeal 评论0 收藏0
  • 应知应会】15个常用的JavaScript字符串操作方法

    摘要:输出和字符串大小写转换方法,和是针对特定地区的实现。输出输出输出输出基于指定的分割符将一个字符串分割成多个子串。 1 初始化 //常用初始化方法 var stringVal = hello iFat3; //构造函数创建方法 var stringObj = new String(hello iFag3); 2 length属性 var stringVal = hello iFat3; ...

    wwq0327 评论0 收藏0
  • 【译】async/await 应知应会

    摘要:原文地址原文作者翻译作者是在版本中引入的,它对于中的异步编程而言是一个巨大的提升。可能会产生误导一些文章把和进行了比较,同时说它是异步编程演变过程中的下一代解决方案,对此我不敢苟同。结论在中引入的关键字无疑是对异步编程的一大加强。 原文地址: https://hackernoon.com/javasc...原文作者: Charlee Li 翻译作者: Xixi20160512 asy...

    Ku_Andrew 评论0 收藏0

发表评论

0条评论

Flink_China

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<