JS 索引數組、關聯數組和靜態數組、動態數組


 1 JS 索引數組、關聯數組和靜態數組、動態數組
 2 
 3 數組分類:
 4 
 5 1、從數組的下標分為索引數組、關聯數組
 6 
 7 var ary1 = [1,3,5,8];
 8 //按索引去取數組元素,從0開始(當然某些語言實現從1開始)
 9 //索引實際上就是序數,一個整型數字
10 alert(ary1[0]);
11 alert(ary1[1]);
12 alert(ary1[2]);
13 alert(ary1[3]);
14 
15 
16 var ary2 = {};
17 //存取時,以非序數(數字),這里是字符串
18 ary2["one"] = 1;
19 ary2["two"] = 2;
20 ary2["thr"]  = 3;
21 ary2["fou"] = 4;
22 
23 2、從對數據的存儲分為靜態數組、動態數組
24 
25  Int[] ary1 = {1,3,6,9};//定義后數組的長度固定了不能改變,按索引取數組元素    List ary2 = new ArrayList(); ary2.add(1);//可以動態的添加元素,數組的長度也隨着變化 ary2.add(3); ary2.add(6);  
26 
27  
28 
29 var ary = [];//定義一個數組,未指定長度
30 ary[0] = 1;//可以動態的添加元素
31 ary.push(3);
32 ary.push(5);
33 
34 alert(ary.join(","));//輸出1,3,5
35 
36 js的數組同時屬於索引數組和動態數組,因為本質上它就是一個js對象,體現着js動態語言特性。但js的索引數組並非“連續分配”內存的,因此索引方式並不會帶來很高的效率。而java中的數組則是連續分配內存的。
37 
38 Array 對象sort 方法
39 描述: 
40 返回一個元素已經進行了排序的 Array 對象.
41 
42 語法:
43 sort() 默認對 字符傳進行排序.
44 arrayobj.sort(sortfunction) 
45 如要求結果是10、16、120這樣的數字大小排序,應該使用下面的程序:
46 
47  
48 function(x,y)是具體實現排序功能的函數, 上面的方法是實現升序,如果想實現降序,可以改下返回結果:return parseInt(y)-parseInt(x);
49 當然如果想實現字符串的排序,則可以直接使用a.sort(param);即sort(param) 默認對字符串進行排序,參數為一函數,如果省略該參數,則那么元素將按照 ASCII 字符順序進行升序排列.當然也可以實現對Long型數據排序,將parseInt改為parseLong即可.

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM