【发布时间】:2019-07-09 06:54:42
【问题描述】:
我正在构建一个这样的打字机字典:
const skills = x
.map(y => y.skills)
.flat(1)
.map(z => {
return { [z.id]: { skill: z } };
});
这就是我通过上面的代码得到的数组:
{ 7ff2c668-0e86-418a-a962-4958262ee337: {skill: {…}} }
{ c6846331-2e11-45d6-ab8d-306c956332fc: {skill: {…}} }
{ 0fc0cb61-f44d-4fd0-afd1-18506380b55e: {skill: {…}} }
{ 36dc0b74-84ee-4be2-a91c-0a91b4576a21: {skill: {…}} }
现在的问题是我无法按键访问字典:
const id = '7ff2c668-0e86-418a-a962-4958262ee337';
const one = myArr.find(x => x === id); // returns undefined
const two = myArr[id]; // returns undefined
任何想法如何解决?
【问题讨论】:
-
什么是
myArr? -
@NickParsons 是元素数组,例如
{ 7ff2c668-0e86-418a-a962-4958262ee337: {skill: {…}} } -
并且是
x和id就像7ff2c668-0e86-418a-a962-4958262ee337一样? -
@NickParsons 正确
-
按照建议使用地图,它为您提供与字典几乎相同的功能
标签: javascript arrays typescript object