欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JS中生成和解析JSON的方法讲解

程序员文章站 2023-11-09 08:31:16
1、js中生成json对象的方法: var json = []; var row1 = {}; row1.id= "1"; row1.name = "jyy"...

1、js中生成json对象的方法:

var json = [];

var row1 = {};

row1.id= "1";

row1.name = "jyy";

或者var row2 = {id:'2',name:'abc'}

json.push(row1);

json.push(row2);

2、js中将json对象解析为字符串的方法:

var jsonstr = json.stringify(json);

3、js解析json对象或者字符串的方法:

var objs = eval(json);或者var objs = eval(jsonstr);

for(var j = 0;j<objs.length;j++){

   alert(objs[j].id);

   alert(objs[j].name);

  }

4、页面中json对象与json字符串互转(4种转换方式):

1>jquery插件支持的转换方式:

$.parsejson( jsonstr ); //jquery.parsejson(jsonstr),可以将json字符串转换成json对象

2>支持的转换方式(firefox,chrome,opera,safari,ie9,ie8)等浏览器:

json.parse(jsonstr); //可以将json字符串转换成json对象

json.stringify(jsonobj); //可以将json对象转换成json对符串

注:ie8(兼容模式),ie7和ie6没有json对象,推荐采用json官方的方式,引入json.js。 

3>javascript支持的转换方式: 

eval('(' + jsonstr + ')'); //可以将json字符串转换成json对象,注意需要在json字符外包裹一对小括号 

注:ie8(兼容模式),ie7和ie6也可以使用eval()将字符串转为json对象,但不推荐这些方式,这种方式不安全eval会执行json串中的表达式。