JSON
JS中的对象只有JS本人意识,其余的语言都不意识
JSON就是一个非凡格局的字符串,这个字符串能够被任意的语言所辨认,
并且能够转换为任意语言中的对象,JSON在开发中次要用来数据的交互
如果须要兼容IE7及以下的JSON操作,则能够通过引入一个内部的js文件来解决
JSON
JavaScript Object Notation JS对象表示法
JSON和JS对象的格局一样,只不过JSON字符串中的属性名必须加双引号
其余的和JS语法统一
JSON分类:
1.对象 {}
2.数组 []
JSON中容许的值:
1.字符串
2.数值
3.布尔值
4.null
5.对象
6.数组
例子:
var arr = '[1,2,3,"hello",true]';
var obj2 = '{"arr":[1,2,3]}';
var arr2 ='[{"name":"孙悟空","age":18,"gender":"男"},{"name":"孙悟空","age":18,"gender":"男"}]';
将JSON字符串转换为JS中的对象
在JS中,为咱们提供了一个工具类,就叫JSON
这个对象能够帮忙咱们将一个JSON转换为JS对象,也能够将一个JS对象转换为JSON
var json = '{"name":"孙悟空","age":18,"gender":"男"}';
json –> js对象
JSON.parse()
能够将以JSON字符串转换为js对象
它须要一个JSON字符串作为参数,会将该字符串转换为JS对象并返回
var o = JSON.parse(json);
var o2 = JSON.parse(arr);
//console.log(o.gender);
//console.log(o2[1]);
var obj3 = {name:"猪八戒" , age:28 , gender:"男"};
JS对象 —> JSON
JSON.stringify()
能够将一个JS对象转换为JSON字符串
须要一个js对象作为参数,会返回一个JSON字符串
var str = JSON.stringify(obj3);
//console.log(str);
JSON这个对象在IE7及以下的浏览器中不反对,所以在这些浏览器中调用时会报错
var str3 = '{"name":"孙悟空","age":18,"gender":"男"}';
JSON.parse(str3);
eval()
这个函数能够用来执行一段字符串模式的JS代码,并将执行后果返回
如果应用eval()执行的字符串中含有{},它会将{}当成是代码块
如果不心愿将其当成代码块解析,则须要在字符串前后各加一个()
eval()这个函数的性能很弱小,能够间接执行一个字符串中的js代码,
然而在开发中尽量不要应用,首先它的执行性能比拟差,而后它还具备安全隐患
var str2 = "alert('hello');";
var obj = eval("("+str+")");
//console.log(obj);
发表回复