我是新手,所以请轻松一下,哈哈。
我有一个hashmap,我试图动态添加新的键和值。我在for循环中执行此操作,但由于某种原因,添加到散列映射的唯一键和值是for循环找到的最后一个键。
这是我的代码:
//HASHMAP BEGINNING HERE;
var newKey;
var newValue;
var MQHash = {};
for (var c = 0; c < lines.length; c++) {
if (lines[c].match(/\.\w+\s\{|\.\-\w+\s\{|\.\w+\-\w+\s\{/)) {
console.log("It works!");
console.log(lines[c].match(/\.\w+\s\{|\.\-\w+\s\{|\.\w+\-\w+\s\{/));
//Saving the match as newKey
newKey = lines[c].match(/\.\w+\s\{|\.\-\w+\s\{|\.\w+\-\w+\s\{/);
console.log("NEWKEY", newKey);
}
if (lines[c].match(/\{(.*)(.*)\}/)) {
console.log(lines[c].match(/\{(.*)(.*)\}/));
//Saving the match as newValue
newValue = lines[c].match(/\{(.*)(.*)\}/)[1];
//Pushing them both into the hashmap
//MQHash.push(newKey, newValue);
//ALSO TRIED IT THIS WAY
MQHash[newKey] = newValue;
}
}
这是最终hashmap的输出结果:
"Final Version" Object { .bg-color {: " width: 400px; " }
而且我知道该密钥中应该有更多的值。
有什么建议吗?提前谢谢!