Javascript / NodeJS,获取地图的长度

时间:2017-06-02 14:48:21

标签: javascript node.js dictionary

所以我在返回地图大小方面遇到了一个小问题:

in start

{
    '1': {
        siteNumber: 1,
        roomsMap: {
            '1': [Object],
            '2': [Object],
            '3': [Object]
        },
        siteState: false
    },
    '2': {
        siteNumber: 2,
        roomsMap: {
            '1': [Object]
        },
        siteState: false
    }
}

0

这就是我在终端中得到的结果:

0

我的意思是,我的地图显然有2个键/值,但它总是返回map.length。 我尝试了undefined,但我得到了.length(可能原因size = myfunction(siteRoomsMap); var myfunction = function(data){ for (i in data) { size++; } return size; }; 对于地图不存在?)

我可以编写一个看起来像我自己的函数,并在我的地图上用

调用它
.size

但为什么我不能使用{{1}}?我查看了文档,它清楚地说它返回了地图中元素的数量???

2 个答案:

答案 0 :(得分:0)

我似乎无法重现您的问题:



php artisan migrate




所以我认为你填写var map = new Map(), obj1 = { siteNumber: 1, roomsMap: { '1': [Object], '2': [Object], '3': [Object] }, siteState: false }, obj2 = { siteNumber: 2, roomsMap: { '1': [Object] }, siteState: false }; //set key-value pairs here map.set('1', obj1); map.set('2', obj2); console.log(map); console.log(map.size);的方式肯定有问题。

答案 1 :(得分:0)

插入内容时,请使用set方法而不是块运算符。