JSON 数据类型

本文介绍了JSON作为数据传输格式的基础知识,包括其一、单条和集合型的格式,以及如何进行类型转换。详细讲解了`JSON.parse()`用于将JSON字符串转化为JavaScript对象,而`JSON.stringify()`则用于将JavaScript对象转化为JSON字符串。此外,还提供了模拟数据示例,如百度搜索API,以帮助理解JSON的实际应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

后台给前端返回的数据格式 : 数组型+对象

解析json 进行数据绑定

JSON 是用于存储和传输数据的格式,
JSON 通常用于服务端网页传递数据

一、格式

1.单条json —— key:value

	var list={"name":"张三","age":20};
    console.log(list);
    console.log(list.name);  //张三

在这里插入图片描述
2.集合型json

	var arr=[
        {"name":"b1"},
        {"name":"b2"},
        {"name":"b3"},
        {"name":"b4"}
    ];
    console.log(arr[0].name);	//b1

在以上实例中,对象 “arr” 是一个数组,包含了三个对象。

二、类型转换

后端返回的数据一般为 json对象string 类型(json的字符串类型)

var str='[{"name":"b1"},{"name":"b2"},{"name":"b3"},{"name":"b4"}]';
console.log(str);

在这里插入图片描述
json格式转化【JSON字符串型转对象】:

var arr=JSON.parse(str);
console.log(arr);

在这里插入图片描述
【对象型转JSON字符串】:

onsole.log(JSON.stringify(arr));

在这里插入图片描述

举例

1.JSON.parse() [JSON 字符串—> JavaScript 对象]

var text = '{ "sites" : [' +
	'{ "name":"Runoob" , "url":"www.runoob.com" },' +
	'{ "name":"Google" , "url":"www.google.com" },' +
	'{ "name":"Taobao" , "url":"www.taobao.com" } ]}';	
var obj = JSON.parse(text);
console.log(obj);
    
document.getElementById("demo").innerHTML = obj.sites[1].name + " " + obj.sites[2].url;

在这里插入图片描述
在这里插入图片描述

2.JSON.stringify() [ JavaScript 对象—> JSON 字符串]

    var str = {"name":"百度", "site":"https://www.baidu.com"}
    var str_pretty1 = JSON.stringify(str);

    var str_pretty2 = JSON.stringify(str, null, 4);
    console.log(str_pretty2);

在这里插入图片描述
在这里插入图片描述

JSON.stringify(value[, replacer[, space]])
参数说明:

1.value: 必需, 要转换的 JavaScript 值(通常为对象或数组)。

2.replacer: 可选。用于转换结果的函数或数组。

3.space: 可选,文本添加缩进、空格和换行符,如果 space 是一个数字,则返回值文本在每个级别缩进指定数目的空格

三、模拟数据

var city=[
        {
            name:"陕西省",
            s2:[
                {
                    name:"西安市",
                    s3:[
                        {
                            name:"雁塔区"
                        },
                        {
                            name:"未央区"
                        }
                    ]
                },
                {
                    name:"宝鸡市",
                    s3:[
                        {
                            name:"陈仓区"
                        },
                        {
                            name:"高新区"
                        }    
                    ]
                }
            ]
        }
    ];

百度常用搜索API:
http://www.baidu.com/s?wd=关键字
或:
http://www.baidu.com/s?wd=关键字&cl=3
cl(class):搜索类型
cl=3:网页搜索 cl=2:图片搜索

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

致可乐

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值