Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 关于typescript中的可索引类型(索引签名)_Javascript_Typescript - Fatal编程技术网

Javascript 关于typescript中的可索引类型(索引签名)

Javascript 关于typescript中的可索引类型(索引签名),javascript,typescript,Javascript,Typescript,我想做一本通用词典,像《c#词典》 但是javascript不支持括号([])运算符重载 所以我想到了一个窍门。这只是使用索引签名 但它有一个关键问题。无法遍历像c#这样的元素。(为或foreach) 救救我 顺便说一句,抱歉用英语说。你要么用普通物体: const dict: { [key: string]: number } = {}; dict["a"] = 1; dict["b"] = 2; for(let key in dict) console.log(key +

我想做一本通用词典,像《c#词典》

但是javascript不支持括号([])运算符重载

所以我想到了一个窍门。这只是使用索引签名

但它有一个关键问题。无法遍历像c#这样的元素。(为或foreach)

救救我


顺便说一句,抱歉用英语说。

你要么用普通物体:

 const dict: { [key: string]: number } = {};

 dict["a"] = 1;
 dict["b"] = 2;

 for(let key in dict)
   console.log(key + ":" + dict[key]);

for(const [k, v] of Object.entries(dict))
  consope.log(k + ":" + v);
或者使用地图:

  const dict = new Map<string, number>();

  dict.set("a", 1).set("b", 2);

  for(const [k, v] of dict.entries())
    console.log(k + ":" + v);
const dict=newmap();
口述集(“a”,1)。口述集(“b”,2);
for(常量[k,v]的dict.entries())
console.log(k+“:”+v);