首页 > 如何用js实现字典?

如何用js实现字典?

感觉用object实现不容易排序


Javascript 可以创建这样的关联数组(类似字典):

var dict = new Array();

dict["a"] = 100;
dict["b"] = 200;

dict.a;     // 100
dict.b;     // 200

但是这样子创建出来的 dict 是不会像普通数组那样有 length 属性的(值不变,除非你手工维护),遍历的话可以用 for...in 循环。

说到排序的话,其实普通的对象排序也不是很难。你可以用 for...in 循环(别忘了检查 hasOwnProperty)把所有的 keys 取出来单独保存一个数组,然后对该数组排序。(如果 ECMAScript5 可用的话,也可以用 Objects.keys(),非常方便)排序之后用该数组的值作为下标去访问原对象,就实现排序后的对象了。这些过程非常普遍,可以写个 utility 存起来方便调用。

【热门文章】
【热门文章】