前端 JavaScript -- Json

本文介绍了JSON格式如何作为不同编程语言间数据交互的通用桥梁,讲解了JSON对象和数组的结构,以及JSON与JavaScript对象的转换方法,包括IE7以下版本的处理技巧。重点突出了JSON的定义、用途和基本元素类型。
摘要由CSDN通过智能技术生成

JSON — java script object notation JS对象表示法。 json的格式和js对象格式相同,js中对象的属性名加不加双引号都可以,但在json中对象的属性名必须加双引号,其他的与js语法一致。

{
    "name" : "武松",
    "age" : 18,
    "sex" : "男"
}

//js对象
var jsObj = {
    name : "武松",
    age : 18,
    sex : "男"
}
//json字符串
var Json = '{"name" : "武松","age" : 18,"sex" : "男"}'

为了实现前后端资源的互传,如后台的数据发往网页,获取网页从服务器请求数据

由于服务器和网页的编写语言不同,二者编写的数据内容不能互相识别,每种语言只能认识属于自己语法规范的数据信息。

我们将js的对象转化为字符串,这样其他的语言都可以进行识别,这种字符串就叫做JSON字符串。

JSON就是一种特殊格式的字符串,这样的一种字符串可以被任意一种语言进行识别,并转换为任意语言的对象从中读取信息。

这样就实现了网页和服务器的数据交互(不同语言之间)。

Json分类:

1. 对象{ }

2. 数组[ ]
//对象 
let obj = '{
            "name" : "武松",
            "age" : 18,
            "sex" : "男"
        }'
//数组
let arr = '["武大郎",20,"男"]';

Json中允许的值:

1. 字符串

2. 数值
3. 布尔值
4. null
5. 对象,不包括函数对象,不能传函数
6. 数组

JSON和JS对象的相互转换 (IE7以下版本不适用 可采用eval函数)

//js对象
var jsObj = {
    name : "武松",
    age : 18,
    sex : "男"
}
//json字符串
var Json = '{"name" : "武松","age" : 18,"sex" : "男"}'
 /**
 *  json字符串与js对象转换
 *  - js中提供一个工具类JSON可以帮助我们实现js对象和字符串的相互转换
 *  1. json --> js对象
 *          JSON.parse(Json)
 *  2. js对象转化为JSON
 *        JSON.stringify(json)
 */
var json = JSON.parse(Json);
//js -->json
var jsObject = JSON.stringify(jsObj);
console.log(json)
console.log(jsObject)

eval()
- 这个函数可以用来执行一段字符串形成的js代码,并且会将执行的结果返回
- 如果使用eval执行的字符串中含有{},它会将{}当成代码块,在字符串前后加一个()就不会识别为代码块
- 在开发尽量不要使用,性能差 存在安全隐患
- 
var str = “alter('test')”
var obj = eval("("+str+")")


 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值