我需要在javascript中具有等效的哈希映射。似乎地图是正确的选择。但是,我需要将Map中每对的值设置为一个数组。例如, myMap: key1:param1 值1:[1、2、3]
key2:param2 值2:[3,4,5]
我看了下一页,但不知道该怎么做。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map/has
执行此操作的目的是我试图提取HTML页面中故事中的数据。基本上,我想使用哈希映射来组织表中的所有数据。因此,每个列名称将是哈希映射的键,并且列中的对应值将是与该键对应的值。
以下是我尝试使用的代码:
{{1}}
我不知道如何为新对值创建一个空数组。谢谢!
答案 0 :(得分:2)
只是一个简单的对象:
transaction_date
要修复当前代码,请执行以下操作:
var param1 = "myParam1", param2 = "myParam2", value1 = [1, 2, 3], value2 = [3, 4, 5];
var myObject = {
[param1]: value1,
[param2]: value2
};
console.log(myObject);
答案 1 :(得分:1)
在代码中,您将属性访问语法和Map方法混合使用,请使用以下方法之一:
const measurementDataMap = {};
//...
if(measurementDataMap[value.name] == undefined) {
measurementDataMap[value.name] = [];
}
measurementDataMap[value.name].push(value.value);
// OR
const measurementDataMap = new Map;
//...
if(!measurementDataMap.has(value.name))
measurementDataMap.set(value.name, []);
measurementDataMap.get(value.name).push(value.value);