DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> js數組如何添加json數據及js數組與json的區別
js數組如何添加json數據及js數組與json的區別
編輯:關於JavaScript     

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

  結果都為:'空閒閒置期'

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved