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回调必须是一个函数”
我不太确定如何解决这个问题,但是有没有办法解决这个问题,还是我做错了?
谢谢!
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)