JSON(JavaScript Object Notation )是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,JSON是JavaScript原生数据格式。
下面给大家介绍js数组添加json数据的两种方式。
// 第一种方式personInfo: [],for(var i = 0; i < _STAGE.passengerInfoArray.length; i++){var name = _STAGE.passengerInfoArray[i];var person = {v:name, text:name};this.personInfo.push(person);}// 第二种方式var passengerInfo = {};passengerInfo.psgTypeDesc = psgTypeDesc;passengerInfo.flightPrice = flightPrice;_STAGE.passengerInfoArray.push(passengerInfo);js数组与 json 的区别一,数组 1. 定义一维数组:var s1=new Array();
s1=[1,2,3,4]或者s1[0]=1,s1[1]=2,s1[3]=3,s1[4]=4;
alert(s1[0]);
结果为1;
2,,定义二维素组:var s1=new Array();
var s1=[[3,1],[2,3,4],3,[4,5,6,7,8]];
alert(s1[1][0]);
结果为2;
二,定义json对象 1,json对象
var status_process = { " name5" : "闲置期", "name1" : "播种期", "name2" : "苗期", "name3" : "生长期", "name4" : "采收期"} alert(status_process); 结果为:Object:Object;
2,json字符串
所谓json字符串,是指该字符串变量的值与json的格式相同,但是不是json对象,比如:
var s1="{"; var s2 = " "name5" : "闲置期","name1" : "播种期","name2" : "苗期","name3" : "生长期","name4" : "采收期""; var s3="}"; var status_process=s1+s2 +s3; 虽然status_process的值符合json对象的格式,但是它不是对象,只是一个字符串(是拼凑出来的);
将字符串转换为json对象使用函数eval,eval("(" + status_process+ ")");
结论:从后台传入到前台的是json字符串,不是真正的json对象,因此需要使用eval函数转换。
3,json对象的使用
var status_process = {name5 : "闲置期", name1 : "播种期", name2 : "苗期",name3 : "生长期",name4 : "采收期" }; alert(status_process["name5"]); alert(status_process.name5); 两个都为:闲置期
4,json二维对象
var status_process = { name5 : {name3:"空闲闲置期"}, name1 : "播种期", name2 : "苗期", name3 : "生长期", name4 : "采收期"};alert(status_process["name5"]["name3"]);alert(status_process.name5.name3); 结果都为:"空闲闲置期"