关于JavaScript中的关联数组分析

(编辑:jimmy 日期: 2024/10/10 浏览:2)

通常的数组在填充时会隐式或者显示指定数组下标,但JS中数组可以以名字的形式为元素赋值,这就形成了关联数组,如:

复制代码 代码如下:
var arr=new Array();
arr["china"]="beijing,niaoling,hulan";
arr["usa"]="newyork,washington,atlanta";
arr["japan"]="tokyo";

alert(arr["china"]);
alert(arr["japan"]);

alert(arr[0]);

注意上面的alert(arr[0]);这一句,它会返回undifined。这就意味着,关联数组中,不能再以传统的下标方式来访问数组元素而必须通过元素的名字。
这种通过名字来访问数组元素的形式有可读性高,灵活方便的优势。一定程度上它可以作为JS中的哈希表来使用。
对关联数组进行遍历时需要使用for in 循环,注意以下代码中两种不同的遍历方式:

复制代码 代码如下:
var arr=new Array();
arr["china"]="beijing,niaoling,hulan";
arr["usa"]="newyork,washington,atlanta";
arr["japan"]="tokyo";

// 这种方式可以遍历关联数组中的名称
for(var item in arr){
alert(item);
}

// 这种方式可以遍历关联数组中的各元素
for(var item in arr){
alert(arr[item]);
}

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。