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);
})();代码>注意这是你问题的“正确”答案,即使它不是公认的答案。