过滤掉对象中的特定键

Sky*_*ell 1 javascript ecmascript-6 reactjs react-native

我正在写出对象的键/值对。我正在尝试过滤掉对象中的 2 个键,如下所示:

{Object.entries(params.char).filter('Attribute1').filter('Attribute2').map(([key,value], index) => <Text key={key}>{key}</Text>)}
Run Code Online (Sandbox Code Playgroud)

这是“paramas”中的对象之一:

{
    id: 1,
    Name: "Drax Bravesword",
    Rating: "*****",
    XP: 392
Age: 34
    Avatar: require('./images/profile1.png'),
    Map: require('./images/map_1.png'),
    Attribute1: "Power",
    Attribute2: "Knowledge",
    Attribute3: "Family"
}
Run Code Online (Sandbox Code Playgroud)

但是,当我运行此命令时,我收到此错误:

“Array.prototype.filter回调必须是一个函数”

我不太确定如何解决这个问题,但是有没有办法解决这个问题,还是我做错了?

谢谢!

Bar*_*icz 5

filter数组方法接受函数作为参数,而不是字符串。所以请使用这个:

Object.entries(params.char).filter((item) => (item.indexOf('Attribute1') || item.indexOf('Attribute2') > -1 ))...
Run Code Online (Sandbox Code Playgroud)

Object.entries(params.char).filter((item) => (item.indexOf('Attribute1') || item.indexOf('Attribute2') > -1 ))...
Run Code Online (Sandbox Code Playgroud)