Javascript 财产';价值观';不存在于类型';ObjectConstructor';使用Object.values(映射)时键入脚本

Javascript 财产';价值观';不存在于类型';ObjectConstructor';使用Object.values(映射)时键入脚本,javascript,typescript,object,javascript-objects,Javascript,Typescript,Object,Javascript Objects,我希望遍历我的键/值对,并将每个键的所有值推送到它自己的数组中。每个键的这些值数组应推送到单个输出数组中 我希望这能解释我想做什么: Input: map = {"hi":["hello","hey","howdy"],"bye":["Goodbye","Ciao"]} Output: output = [["hello","hey","howdy"],["Goodbye","Ciao"]] 这就是我到目前为止所做的: return Object.values(map) 任何关于我为什

我希望遍历我的键/值对,并将每个键的所有值推送到它自己的数组中。每个键的这些值数组应推送到单个输出数组中

我希望这能解释我想做什么:

Input: map = {"hi":["hello","hey","howdy"],"bye":["Goodbye","Ciao"]}

Output:  output = [["hello","hey","howdy"],["Goodbye","Ciao"]]
这就是我到目前为止所做的:

return Object.values(map)

任何关于我为什么在TypeScript中出现错误的帮助。在Javscript中,它似乎编译并返回正确的答案

 Property 'values' does not exist on type 'ObjectConstructor'
作为背景,这是一个分组字谜问题的一部分,所以我从提供的字符串数组“str”填充我的映射,如下所示

 let map = {};
  str.forEach(anagram => {
    const sortedWord = anagram
      .split("")
      .sort()
      .join("");
    map[sortedWord] = map[sortedWord] || [];
    map[sortedWord].push(anagram);
  });
  return Object.values(map)
}

代码可以使用
键操作,而不是使用
。从文件中:

Object.keys()
方法返回给定对象自身可枚举属性名称的数组,其顺序与我们在普通循环中得到的顺序相同

请在此进一步阅读:

作为一个解决方案,我会考虑以下的情况:

(函数(){
常量输入={“你好”:[“你好”,“你好”,“你好”],“再见”:[“再见”,“再见”]};
console.log('input',input);
const-output=Object.keys(input.map)(key=>input[key]);
console.log('output',output);
})();注意这是你问题的“正确”答案,即使它不是公认的答案。