>  기사  >  웹 프론트엔드  >  js 배열에 json 데이터를 추가하는 방법과 js 배열과 json_javascript 기술의 차이점

js 배열에 json 데이터를 추가하는 방법과 js 배열과 json_javascript 기술의 차이점

WBOY
WBOY원래의
2016-05-16 15:34:462051검색

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);

결과는 '유휴 기간'입니다

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.