斷點

          每天進步一點點!
          posts - 174, comments - 56, trackbacks - 0, articles - 21

          JS關聯數組

          Posted on 2010-01-14 21:30 斷點 閱讀(543) 評論(0)  編輯  收藏 所屬分類: JScript

          數組分類:
          1、從數組的下標分為索引數組、關聯數組
          /* 索引數組,即通常情況下所說的數組 */ 
          var ary1 = [1,3,5,8];  
          //按索引去取數組元素,從0開始(當然某些語言實現從1開始),索引實際上就是序數,一個整型數字  
          alert(ary1[0]);  
          alert(ary1[1]);  
          alert(ary1[2]);  
          alert(ary1[3]);  
           
          /* 關聯數組,指以非序數類型為下標來存取的數組  python中稱為字典 */ 
          var ary2 = {};   //存取時,以非序數(數字),這里是字符串  
          ary2["one"] = 1;  
          ary2["two"] = 2;  
          ary2["thr"]  = 3;  
          ary2["fou"] = 4;
           
          2、從對數據的存儲分為靜態數組、動態數組
          /* java中的靜態數組 */ 
          Int[] ary1 = {1,3,6,9}; //定義后數組的長度固定了不能改變,按索引取數組元素  
            
          /* java中的動態數組   (java中的ArrayList實現是以Array為基礎的。)*/ 
          List<Integer> ary2 = new ArrayList<Integer>();  
          ary2.add(1);//可以動態的添加元素,數組的長度也隨著變化  
          ary2.add(3);  
          ary2.add(6);
           
          /* js的數組屬于動態數組 */ 
          var ary = [];//定義一個數組,未指定長度  
          ary[0] = 1;//可以動態的添加元素  
          ary.push(3);  
          ary.push(5);   
          alert(ary.join(","));//輸出1,3,5 

          js的數組同時屬于索引數組和動態數組,因為本質上它就是一個js對象,體現著js動態語言特性。但js的索引數組并非“連續分配”內存的,因此索引方法并不會帶來很高的效率。而java中的數組則是連續分配內存的。


          例子:
          function test(){
                  
          var oneArray=new Array();
                  oneArray[
          "first"]="firstValue";
                  oneArray[
          "second"]="secondValue";
                  
                  
                  oneDrapList
          =document.createElement("select");
                  
                  
          for(att in oneArray){
                      
          var oneOption=document.createElement("option");
                      oneOption.text
          =oneArray[att]
                      oneOption.value
          =att;
                      
          try{
                          oneDrapList.add(oneOption,
          null);
                          }

                      
          catch(ex){
                          oneDrapList.add(oneOption);
                          }

                      }

          }


          function test(){
              var obj = tool.getFilterByName("<%=dwname%>",'VehicleClass');
              if(obj){
               var cProdNo = '<%=cProdNo%>';
               if(cProdNo=="0316"||cProdNo=="0325"){
                 var array = {"摩托車類":"摩托車類","拖拉機類":"拖拉機類"};
                 for(var temp in array){
                var option = new Option(temp,array[temp]);
                obj.add(option);
                   }
              }
            }
          }

          posted @ 2009-08-14 21:28 斷點 閱讀(202) | 評論 (0)
          主站蜘蛛池模板: 惠东县| 叶城县| 紫金县| 乌鲁木齐县| 广水市| 全州县| 常州市| 广宁县| 曲沃县| 偃师市| 兴业县| 武安市| 长武县| 澄城县| 西林县| 城固县| 福泉市| 承德县| 黄龙县| 隆林| 策勒县| 玉田县| 连南| 绥德县| 开封市| 石景山区| 瑞昌市| 铁岭市| 龙门县| 萝北县| 达日县| 卢氏县| 吴堡县| 东乌珠穆沁旗| 台东市| 建宁县| 惠州市| 通道| 昌图县| 双城市| 宁海县|