我正在尝试在JavaScript中创建地图或字典样式数据结构.每个字符串键指向一个int数组,我想用键指向的数组做一些简单的事情.
我有一堆动物,每只都有一个ID(1,2,3,......).我想把这些放在地图上,所以我知道1,4,5是猫,2,3,6是狗.
这是我对代码更好地解释它的方法.
var myMap = {};
myMap["cats"] = new Array(1,4,5); //animals 1,4,5 are cats
myMap["dogs"] = new Array(2,3,6); //animals 2,3,6 are dogs
Run Code Online (Sandbox Code Playgroud)
1)我如何在数组中添加内容?例如,如果动物#7是猫,下面的代码是否正确?
myMap["cats"].push(7); //so that myMap["cats"] is now an array with [1,4,5,7]
Run Code Online (Sandbox Code Playgroud)
2)我如何对地图进行排序,以便按照数组中的项目数排序键?在这种情况下,myMap ["cats"]将位于myMap ["dogs"]的前面,因为"cats"的数组比"dogs"的数组有更多的项目.以下代码是否正确?
myMap.sort(function(a,b){return myMap[b].length - myMap[a].length});
Run Code Online (Sandbox Code Playgroud)
如果在JavaScript中有更有效的方法,请告诉我.非常感谢!