JSON(JavaScript Object Notation)은 완전히 언어 독립적인 텍스트 형식을 사용하는 경량 데이터 교환 형식입니다. JSON은 JavaScript 기본 데이터 형식입니다.
다음에서는 js 배열에 json 데이터를 추가하는 두 가지 방법을 소개합니다.
// 첫 번째 방법
1 2 3 4 5 6 7 | 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);
}
|
로그인 후 복사
// 두 번째 방법
1 2 3 4 | 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 객체
1 2 3 4 5 6 7 8 | var status_process = {
" name5" : '闲置期' ,
"name1" : '播种期' ,
"name2" : '苗期' ,
"name3" : '生长期' ,
"name4" : '采收期'
}
alert(status_process);
|
로그인 후 복사
결과는 다음과 같습니다: 개체:개체;
2, json 문자열
소위 json 문자열은 문자열 변수의 값이 json과 동일한 형식을 갖지만 다음과 같은 json 객체가 아님을 의미합니다.
1 2 3 4 | 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 객체 사용
1 2 3 4 5 6 7 8 9 | var status_process = {
name5 : '闲置期' ,
name1 : '播种期' ,
name2 : '苗期' ,
name3 : '生长期' ,
name4 : '采收期'
};
alert(status_process[ "name5" ]);
alert(status_process.name5);
|
로그인 후 복사
둘 다 유휴 기간
4.json 2차원 객체
1 2 3 4 5 6 7 8 9 | var status_process = {
name5 : {name3: '空闲闲置期' },
name1 : '播种期' ,
name2 : '苗期' ,
name3 : '生长期' ,
name4 : '采收期'
};
alert(status_process[ "name5" ][ "name3" ]);
alert(status_process.name5.name3);
|
로그인 후 복사
결과는 '유휴 기간'입니다