我试图理解在 Typescript 中迭代映射的语法。我的地图中的键是字符串。这些值是字符串数组。
这是一些示例代码:
let attributeMap: Map<string, string[]> = new Map<string, string[]>();
// sample data
let sampleKey1 = "bob";
// populate map
let value: string[] = attributeMap.get(sampleKey1) || [];
value.push("clever");
attributeMap.set(sampleKey1, value);
value = attributeMap.get(sampleKey1) || [];
value.push("funny");
attributeMap.set(sampleKey1, value);
// try looping through the map
for (let key in attributeMap) {
console.log(attributeMap.get(key));
console.log("WE'RE IN THE MAP!");
}
console.log("done");
Run Code Online (Sandbox Code Playgroud)
当我运行此代码时,唯一打印的内容是“完成”。
为什么地图上没有打印任何内容,也没有显示“我们在地图上”的消息?就好像 for 循环从未进入过一样。这是为什么?我该如何解决这个问题?
我正在使用 homebrew 来更新 git。我输入:
brew install git
Homebrew 告诉我 git 2.28 已经安装并且是最新的。但是,当我输入:
git --version
我得到:
git version 2.15.0
为什么会发生这种情况以及如何解决它?
我读到它可能与 $PATH 有关,但我不完全理解。当我打字时
which git
我得到:
/usr/local/bin/git
dictionary ×1
for-loop ×1
git ×1
homebrew ×1
javascript ×1
macos ×1
shell ×1
terminal ×1
typescript ×1