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, 배열
1. 1차원 배열 정의: var s1=new Array();
s1=[1,2,3,4] 또는 s1[0]=1,s1[1]=2,s1[3]=3,s1[4]=4;
경고(s1[0]);
결과는 1입니다.
2. 2차원 요소 그룹 정의: var s1=new Array();
var s1=[[3,1],[2,3,4],3,[4,5,6,7,8]];
경고(s1[1][0]);
결과는 2입니다.
2. json 객체 정의
1, json 객체
var status_process = { " name5" : '闲置期', "name1" : '播种期', "name2" : '苗期', "name3" : '生长期', "name4" : '采收期' } alert(status_process);
결과는 다음과 같습니다: 개체:개체;
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 개체의 형식을 따르지만 개체가 아니며 단지 문자열일 뿐입니다.
eval, eval("(" status_process ")"); 함수를 사용하여 문자열을 json 객체로 변환합니다.
결론: 백그라운드에서 포그라운드로 전달되는 것은 실제 json 객체가 아닌 json 문자열이므로 eval 함수를 사용하여 변환해야 합니다.
3. json 객체 사용
var status_process = { name5 : '闲置期', name1 : '播种期', name2 : '苗期', name3 : '生长期', name4 : '采收期' }; alert(status_process["name5"]); alert(status_process.name5);
둘 다 유휴 기간
4.json 2차원 객체
var status_process = { name5 : {name3:'空闲闲置期'}, name1 : '播种期', name2 : '苗期', name3 : '生长期', name4 : '采收期' }; alert(status_process["name5"]["name3"]); alert(status_process.name5.name3);
결과는 '유휴 기간'입니다