Javascript的常規(guī)數(shù)組和關(guān)聯(lián)數(shù)組對(duì)比小結(jié)
更新時(shí)間:2012年05月24日 23:18:03 作者:
關(guān)聯(lián)數(shù)組雖然可以用字符串作下標(biāo),但是這個(gè)下標(biāo)是不支持參數(shù)傳值的,換言之,你需要什么就取什么,聽起來很智能,實(shí)際上你取值仍然需要你手動(dòng)去寫下標(biāo)的
首先我們看看數(shù)組的分類:
從數(shù)組的下標(biāo)分為索引數(shù)組、關(guān)聯(lián)數(shù)組
/* 索引數(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;
問題:你可以如下測試:
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)的。
從數(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;
問題:你可以如下測試:
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)的。
您可能感興趣的文章:
- js中的關(guān)聯(lián)數(shù)組與普通數(shù)組詳解
- JavaScript中的關(guān)聯(lián)數(shù)組問題
- JavaScript中的索引數(shù)組、關(guān)聯(lián)數(shù)組和靜態(tài)數(shù)組、動(dòng)態(tài)數(shù)組講解
- 關(guān)于JavaScript中的關(guān)聯(lián)數(shù)組分析
- js以對(duì)象為索引的關(guān)聯(lián)數(shù)組
- JavaScript 以對(duì)象為索引的關(guān)聯(lián)數(shù)組
- js二維數(shù)組定義和初始化的三種方法總結(jié)
- JS數(shù)組的遍歷方式for循環(huán)與for...in
- js數(shù)組去重的常用方法總結(jié)
- jQuery 遍歷json數(shù)組的實(shí)現(xiàn)代碼
- js jquery數(shù)組介紹
- JavaScript關(guān)聯(lián)數(shù)組用法分析【概念、定義、遍歷】
相關(guān)文章
JavaScript數(shù)組_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
這篇文章主要介紹了JavaScript數(shù)組的相關(guān)知識(shí),非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-06-06JavaScript DOM實(shí)現(xiàn)簡單留言板
這篇文章主要為大家詳細(xì)介紹了JavaScript DOM實(shí)現(xiàn)簡單留言板,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01JavaScript實(shí)現(xiàn)滑動(dòng)門效果
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)滑動(dòng)門效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-01-01js獲取時(shí)間函數(shù)及擴(kuò)展函數(shù)的方法
下面小編就為大家?guī)硪黄猨s獲取時(shí)間函數(shù)及擴(kuò)展函數(shù)的方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-10-10SelectPage v2.4 發(fā)布新增純下拉列表和關(guān)閉分頁功能
下拉分頁選擇插件 SelectPage v2.4 發(fā)布了,新增純下拉列表和關(guān)閉分頁功能,下面通過本文給大家啊介紹SelectPage的相關(guān)知識(shí),感興趣的的朋友一起看看吧2017-09-09javascript 封裝的一個(gè)實(shí)用的焦點(diǎn)圖切換效果
之前有一篇博客,實(shí)用的焦點(diǎn)圖切換效果,結(jié)構(gòu)行為相分離 解釋的比較詳細(xì),腳本是分離式的,但在易用性和重用性方面并不理想,這里原作者進(jìn)行了,優(yōu)化。2010-07-07