首页 > 解决方案 > 如何使用 typeof 字符串过滤掉键值对

问题描述

我正在尝试通过对象键进行映射,并且需要删除任何具有字符串类型值的键值对。这是我正在映射的列表

base: Object { 1: "#F3F5F7", 2: "#E0E6EB", 3: "#C5CFD8", … }
color1: "#E0E6EB"
color2: "#697886"
neutral: Object [ "#FFFFFF", "#000000" ]
secondaryColor: "purple",
primaryColor: "red",

在继续映射这些项目之前,我需要保留base并丢弃其他所有内容。neutral还是不完全明白reduce。我将在哪里/如何引入 a reduceorfilter以获得我想要的结果?

return Object.keys(colors).map((color) => {
  return (
    <span key={color}>{color}</span>
  );
});

标签: javascriptreactjsecmascript-6

解决方案


您可以映射列表本身(而不是对象)并转换您的对象,删除您不想要的内容:

// Using destructuring on the parameter and returning a new object.
objectList.map(({ base, neutral }) => ({ base, neutral }))

推荐阅读