Javascript 地图的备选方案。集合(键、列表)始终指向同一列表

Javascript 地图的备选方案。集合(键、列表)始终指向同一列表,javascript,dictionary,data-structures,Javascript,Dictionary,Data Structures,下面的代码应该构建一个包含id domainList的映射,因为当前的JS版本不允许map.set,它甚至不识别map 当使用testMap[key]=domainList时,它总是指向同一个domainList,而不是像Map.set那样指向其他列表。它总是指向一个域列表 这是什么原因 testMap = {}; for (var key in idSet) { iterator = data.iterator(); var domainList = []; w

下面的代码应该构建一个包含id domainList的映射,因为当前的JS版本不允许map.set,它甚至不识别map

当使用testMap[key]=domainList时,它总是指向同一个domainList,而不是像Map.set那样指向其他列表。它总是指向一个域列表

这是什么原因

testMap = {};

for (var key in idSet) {

    iterator = data.iterator();

    var domainList = [];

    while (iterator.hasNext()) {

        var tuple = iterator.next();

        var domain = tuple["Domain"];
        var current_Id = tuple["Id"];

        if (current_Id == key) {
            domainList.push(domain);
        }
    }

    testMap[key] = domainList;
    domainList.lengh() = 0;

你能提供idSet和数据吗?我通过声明几个domainList[],并使用testMap[key]=domainList[I]和计数索引来解决这个问题。