JSON
ES6是js的语法标准,ES6中有js对象转化为json方法
ES6模板字符串是一种用来创建多行字符串和嵌入表达式的新语法。它是在ES6(ECMAScript 2015)中引入的
**例如:**想在页面输出4+5=9,原始方法
//1、浏览器中打印 4+5=9
let n1 = 4;
let n2 = 5;
let result = n1 + n2;
document.write(n1 + "+" + n2 + "=" + result + "<br/>");
而使用模板字符串允许你在字符串中嵌入变量或表达式。你可以使用${}
语法在模板字符串中插入变量或者执行表达式,并将结果嵌入到字符串中
//2、使用ES6模版字符串
document.write(`${n1} + ${n2} = ${result}` + "<br/>");
ES6模板字符串可以在json中使用
let person = {
name:"张三",
age:"18",
eat:function (){
document.write(`${this.name},正在吃饭`);
}
};
//调用
document.write(`姓名:${person.name},年龄:${person.age}` + "<br/>");
person.eat();
**注意:**ES6与JSP中的EL表达式有冲突,两者只能用其一
JavaScript对象
{
name:"zhangsan",
age:23,
city:"北京"
}
JSON字符串
`{"name":"zhangsan","age":23,"city":"北京"}`
具体流程:
方法
JSON对象的方法 | 说明 |
---|---|
stringify(对象) | 将指定对象转换为json格式字符串 |
parse(字符串) | 将指定json格式字符串解析成对象 |
演示:
<script>
let person = {
name:"zhangsan",
age:23,
city:"北京"
};
// 将js对象转化为json字符串
let s = JSON.stringify(person);
document.write(s + "<br/>"); //输出 {"name":"zhangsan","age":23,"city":"北京"}
// 将json字符串转化为对象
let person2 = JSON.parse(s);
document.write(`姓名:${person2.name},年龄:${person2.age}` + "<br/>"); //输出 姓名:zhangsan,年龄:23
</script>
JSON转换工具的概述
**简介:**JSON的转换工具是通过Java封装好的一些jar工具包,直接将Java对象或集合转换成JSON格式的字符串,也可以将 JSON格式的字符串转成Java对象。
常见的JSON转换工具:
Fastjson
**简介:**Fastjson是阿里巴巴提供的一个Java语言编写的高性能功能完善的JSON库,是目前Java语言中最快的JSON库,可以实现Java对象和JSON字符串的相互转换
使用:
导入依赖
<dependencies>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.58</version>
</dependency>
</dependencies>
Java对象转JSON
String jsonStr = JSON.toJSONString(obj);
JSON字符串转Java对象
User user = JSON.parseObject(jsonStr, User.class);
代码演示:
public static void main(String[] args) {
// 1、将user对象转化为json字符串
User user = new User("zhangsan",18);
String jsonUser = JSON.toJSONString(user);
System.out.println(jsonUser);
// 2、将json字符串转换为java对象
String userStr = "{\"age\":30,\"username\":\"list\"}";
User parse = JSON.parseObject(userStr,User.class);
System.out.println(parse);
}