亚洲国产日韩欧美在线a乱码,国产精品路线1路线2路线,亚洲视频一区,精品国产自,www狠狠,国产情侣激情在线视频免费看,亚洲成年网站在线观看

Javascript的常規(guī)數(shù)組和關(guān)聯(lián)數(shù)組的對(duì)比小結(jié)

時(shí)間:2020-11-16 17:19:29 JavaScript 我要投稿

Javascript的常規(guī)數(shù)組和關(guān)聯(lián)數(shù)組的對(duì)比小結(jié)

  首先我們看看數(shù)組的`分類:

  從數(shù)組的下標(biāo)分為索引數(shù)組、關(guān)聯(lián)數(shù)組

  復(fù)制代碼 代碼如下:

  /* 索引數(shù)組,即通常情況下所說的數(shù)組 */

  var ary1 = [1,3,5,8];

  //按索引去取數(shù)組元素,從0開始(當(dāng)然某些語言實(shí)現(xiàn)從1開始),索引實(shí)際上就是序數(shù),一個(gè)整型數(shù)字

  ary1[0];

  ary1[1];

  ary1[2];

  ary1[3];

  /* 關(guān)聯(lián)數(shù)組,指以非序數(shù)類型為下標(biāo)來存取的數(shù)組 python中稱為字典 */

  var ary2 = {}; //存取時(shí),以非序數(shù)(數(shù)字),這里是字符串

  ary2["one"] = 1;

  ary2["two"] = 2;

  ary2["thr"] = 3;

  ary2["fou"] = 4;

  問題:你可以如下測(cè)試:

  alert(arry1.length); // 返回值為:4

  alert(arry2.length); //返回值為:0

  這是因?yàn)槭裁茨,因(yàn)閖s是非類型語言,所以js 的任何類型都是object,

  比如var arr = [];

  arr[0] = 1;

  arr[1] = 2;

  arr[2] = 3;

  arr["s"] = 4;

  此時(shí)你調(diào)用arr.s相當(dāng)于是在調(diào)用arr這個(gè)對(duì)象的s屬性,但是這是arr.length仍然是3。

  總結(jié):關(guān)聯(lián)數(shù)組雖然可以用字符串作下標(biāo),但是這個(gè)下標(biāo)是不支持參數(shù)傳值的,換言之,你需要什么就取什么,聽起來很智能,實(shí)際上你取值仍然需要你手動(dòng)去寫下標(biāo)的。