java的基本语法和代码(JavaWeb24-2JSON基础语法)
#创作挑战赛#
14.2 JSON 基础语法14.2.1 定义格式JSON 本质就是一个字符串,但是该字符串内容是有一定的格式要求的。 定义格式如下:
let 变量名 = '{"key":value, "key":value, ... }'
json 串的键要求必须使用双引号括起来,而值根据要表示的类型确定
value 的数据类型分为如下:
- 数字(整数或浮点数)
- 字符串(使用双引号括起来)
- 逻辑值(true或者false)
- 数组(在方括号中)
- 对象(在花括号中)
- null
示例如下:
let jsonstr = '{"name":"zhangsan", "age":23, "addr":["北京","广州"]}';
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
//
let jsonstr = '{"name":"zhangsan", "age":23, "addr":["北京","广州"]}';
alert(jsonstr);
</script>
</body>
</html>
若想要获取到 JSON 串中的 name 属性值,则需要借助 JS 提供的 JSON 对象
JSON 对象由如下两个方法:
- parse(str):将 JSON 串转换成 JS 对象。
- 使用方式:var jsObject = JSON.parse(jsonstr);
- stringify(obj):将 js 对象 转换成 JSON 串
- 使用方式:var jsonStr = JSON.stringify(jsObject);
示例如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
// 1. 定义JSON字符串
let jsonstr = '{"name":"zhangsan", "age":23, "addr":["北京","广州"]}';
console.log(jsonstr);
// 2. 将 JSON 字符串转为 JS 对象
let jsObject = JSON.parse(jsonstr);
console.log(jsObject);
console.log(jsObject.name);
// 3. 将 JS 对象转换成 JSON 字符串
let jsonStr = JSON.stringify(jsObject);
console.log(jsonStr);
</script>
</body>
</html>
测试结果如下:
14.2.3 发送异步请求携带参数
以后使用 axios 发送请求时,如果要携带复杂的数据时都会以 JSON 格式进行传递,如下
axios({
method: "post",
url: "http://localhost:5050/AjaxDemo/AjaxDemo1",
data: "username=zhangsan"
}).then(function(resp){
alert(resp.data);
})
请求参数不可能由我们自己拼接字符串,可以提前定义一个 js 对象,用来封装需要提交的参数,然后使用 JSON.stringify(js对象) 转换为 JSON 串,再将该 JSON 串作为 axios 的 data 属性值进行请求参数的提交。如下:
let jsObject = {name: "zhangsan"}
axios({
method: "post",
url: "http://localhost:5050/AjaxDemo/AjaxDemo1",
data: JSON.stringify(jsObject)
}).then(function(resp){
alert(resp.data);
})
而 axios 是一个很强大的工具。只需要将需要提交的参数封装成 js 对象,并将该 js 对象作为 axios 的 data 属性值进行,它会自动将 js 对象转换为 JSON 串进行提交。如下:
axios({
method: "post",
url: "http://localhost:5050/AjaxDemo/AjaxDemo1",
data: jsObject
}).then(function(resp){
alert(resp.data);
})
注意:
js 提供的 JSON 对象只需要了解一下即可。因为 axios 会自动对 js 对象和 JSON 串进行相互转换。
发送异步请求时,如果请求参数是 JSON 格式,那请求方式必须是 POST 。因为 JSON 串需要放在请求体中
,
免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com