我有一个包含对象数组的json文件(问题).

我有一行代码可以完美地过滤这些对象: const allAnswers = questions.filter(q => q.Ending === question).map(q => q.Parsing)

我try 在该行之前添加一个过滤器,以根据用户输入过滤问题列表 const qlist = questions.filter(q => q.Group <= level)个 此筛选器根本不起作用,它返回一个空数组

它肯定是在寻找对象属性"Group",因为我可以使用Questions[1].group对其进行控制台日志(log)记录. 我已经判断了Group和Level都是数字.

最令人恼火的是,它确实奏效了一次,但我不知道我做了什么.

[
    {
        "Ending": "a",
        "Parsing": "singular nominative",
        "POS": "Noun",
        "Group": 1
    },
    {
        "Ending": "a",
        "Parsing": "singular vocative",
        "POS": "Noun",
        "Group": 1
    },
    {
        "Ending": "am",
        "Parsing": "singular accusative",
        "POS": "Noun",
        "Group": 1
    },
    {
        "Ending": "ae",
        "Parsing": "singular genitive",
        "POS": "Noun",
        "Group": 1
    },
    {
        "Ending": "ae",
        "Parsing": "singular dative",
        "POS": "Noun",
        "Group": 1
    },
    {
        "Ending": "a",
        "Parsing": "singular ablative",
        "POS": "Noun",
        "Group": 1
    },
    {
        "Ending": "ae",
        "Parsing": "plural nominative",
        "POS": "Noun",
        "Group": 1
    },
    {
        "Ending": "ae",
        "Parsing": "plural vocative",
        "POS": "Noun",
        "Group": 1
    },
    {
        "Ending": "as",
        "Parsing": "plural accusative",
        "POS": "Noun",
        "Group": 1
    },
    {
        "Ending": "arum",
        "Parsing": "plural genitive",
        "POS": "Noun",
        "Group": 1
    },
    {
        "Ending": "is",
        "Parsing": "plural dative",
        "POS": "Noun",
        "Group": 1
    },
    {
        "Ending": "is",
        "Parsing": "plural ablative",
        "POS": "Noun",
        "Group": 1
    },
    {
        "Ending": "us",
        "Parsing": "singular nominative",
        "POS": "Noun",
        "Group": 2
    },
    {
        "Ending": "er",
        "Parsing": "singular nominative",
        "POS": "Noun",
        "Group": 2
    },
    {
        "Ending": "e",
        "Parsing": "singular vocative",
        "POS": "Noun",
        "Group": 2
    },
    {
        "Ending": "er",
        "Parsing": "singular vocative",
        "POS": "Noun",
        "Group": 2
    },
    {
        "Ending": "um",
        "Parsing": "singular accusative",
        "POS": "Noun",
        "Group": 2
    },
    {
        "Ending": "i",
        "Parsing": "singular genitive",
        "POS": "Noun",
        "Group": 2
    },
    {
        "Ending": "o",
        "Parsing": "singular dative",
        "POS": "Noun",
        "Group": 2
    },
    {
        "Ending": "o",
        "Parsing": "singular ablative",
        "POS": "Noun",
        "Group": 2
    },
    {
        "Ending": "i",
        "Parsing": "plural nominative",
        "POS": "Noun",
        "Group": 2
    },
    {
        "Ending": "i",
        "Parsing": "plural vocative",
        "POS": "Noun",
        "Group": 2
    },
    {
        "Ending": "os",
        "Parsing": "plural accusative",
        "POS": "Noun",
        "Group": 2
    },
    {
        "Ending": "orum",
        "Parsing": "plural genitive",
        "POS": "Noun",
        "Group": 2
    },
    {
        "Ending": "is",
        "Parsing": "plural dative",
        "POS": "Noun",
        "Group": 2
    },
    {
        "Ending": "is",
        "Parsing": "plural ablative",
        "POS": "Noun",
        "Group": 2
    },
    {
        "Ending": "um",
        "Parsing": "singular nominative",
        "POS": "Noun",
        "Group": 2
    },
    {
        "Ending": "um",
        "Parsing": "singular vocative",
        "POS": "Noun",
        "Group": 2
    },
    {
        "Ending": "a",
        "Parsing": "plural nominative",
        "POS": "Noun",
        "Group": 2
    },
    {
        "Ending": "a",
        "Parsing": "plural vocative",
        "POS": "Noun",
        "Group": 2
    },
    {
        "Ending": "a",
        "Parsing": "plural accusative",
        "POS": "Noun",
        "Group": 2
    },
    {
        "Ending": "em",
        "Parsing": "singular accusative",
        "POS": "Noun",
        "Group": 3
    },
    {
        "Ending": "is",
        "Parsing": "singular genitive",
        "POS": "Noun",
        "Group": 3
    },
    {
        "Ending": "i",
        "Parsing": "singular dative",
        "POS": "Noun",
        "Group": 3
    },
    {
        "Ending": "e",
        "Parsing": "singular ablative",
        "POS": "Noun",
        "Group": 3
    },
    {
        "Ending": "i",
        "Parsing": "singular ablative",
        "POS": "Noun",
        "Group": 3
    },
    {
        "Ending": "es",
        "Parsing": "plural nominative",
        "POS": "Noun",
        "Group": 3
    },
    {
        "Ending": "es",
        "Parsing": "plural vocative",
        "POS": "Noun",
        "Group": 3
    },
    {
        "Ending": "es",
        "Parsing": "plural accusative",
        "POS": "Noun",
        "Group": 3
    },
    {
        "Ending": "um",
        "Parsing": "plural genitive",
        "POS": "Noun",
        "Group": 3
    },
    {
        "Ending": "ium",
        "Parsing": "plural genitive",
        "POS": "Noun",
        "Group": 3
    },
    {
        "Ending": "ibus",
        "Parsing": "plural dative",
        "POS": "Noun",
        "Group": 3
    },
    {
        "Ending": "ibus",
        "Parsing": "plural ablative",
        "POS": "Noun",
        "Group": 3
    },
    {
        "Ending": "ia",
        "Parsing": "plural nominative",
        "POS": "Noun",
        "Group": 3
    },
    {
        "Ending": "ia",
        "Parsing": "plural vocative",
        "POS": "Noun",
        "Group": 3
    },
    {
        "Ending": "ia",
        "Parsing": "plural accusative",
        "POS": "Noun",
        "Group": 3
    },
    {
        "Ending": "a",
        "Parsing": "plural nominative",
        "POS": "Noun",
        "Group": 3
    },
    {
        "Ending": "a",
        "Parsing": "plural vocative",
        "POS": "Noun",
        "Group": 3
    },
    {
        "Ending": "a",
        "Parsing": "plural accusative",
        "POS": "Noun",
        "Group": 3
    },
    {
        "Ending": "us",
        "Parsing": "singular nominative",
        "POS": "Noun",
        "Group": 4
    },
    {
        "Ending": "us",
        "Parsing": "singular vocative",
        "POS": "Noun",
        "Group": 4
    },
    {
        "Ending": "um",
        "Parsing": "singular accusative",
        "POS": "Noun",
        "Group": 4
    },
    {
        "Ending": "us",
        "Parsing": "singular genitive",
        "POS": "Noun",
        "Group": 4
    },
    {
        "Ending": "ui",
        "Parsing": "singular dative",
        "POS": "Noun",
        "Group": 4
    },
    {
        "Ending": "ui",
        "Parsing": "singular ablative",
        "POS": "Noun",
        "Group": 4
    },
    {
        "Ending": "u",
        "Parsing": "singular ablative",
        "POS": "Noun",
        "Group": 4
    },
    {
        "Ending": "ua",
        "Parsing": "plural nominative",
        "POS": "Noun",
        "Group": 4
    },
    {
        "Ending": "ua",
        "Parsing": "plural vocative",
        "POS": "Noun",
        "Group": 4
    },
    {
        "Ending": "ua",
        "Parsing": "plural accusative",
        "POS": "Noun",
        "Group": 4
    },
    {
        "Ending": "us",
        "Parsing": "plural nominative",
        "POS": "Noun",
        "Group": 4
    },
    {
        "Ending": "us",
        "Parsing": "plural vocative",
        "POS": "Noun",
        "Group": 4
    },
    {
        "Ending": "us",
        "Parsing": "plural accusative",
        "POS": "Noun",
        "Group": 4
    },
    {
        "Ending": "uum",
        "Parsing": "plural genitive",
        "POS": "Noun",
        "Group": 4
    },
    {
        "Ending": "ibus",
        "Parsing": "plural dative",
        "POS": "Noun",
        "Group": 4
    },
    {
        "Ending": "ibus",
        "Parsing": "plural ablative",
        "POS": "Noun",
        "Group": 4
    },
    {
        "Ending": "es",
        "Parsing": "singular nominative",
        "POS": "Noun",
        "Group": 5
    },
    {
        "Ending": "es",
        "Parsing": "singular vocative",
        "POS": "Noun",
        "Group": 5
    },
    {
        "Ending": "em",
        "Parsing": "singular accusative",
        "POS": "Noun",
        "Group": 5
    },
    {
        "Ending": "ei",
        "Parsing": "singular genitive",
        "POS": "Noun",
        "Group": 5
    },
    {
        "Ending": "ei",
        "Parsing": "singular dative",
        "POS": "Noun",
        "Group": 5
    },
    {
        "Ending": "e",
        "Parsing": "singular ablative",
        "POS": "Noun",
        "Group": 5
    },
    {
        "Ending": "es",
        "Parsing": "plural nominative",
        "POS": "Noun",
        "Group": 5
    },
    {
        "Ending": "es",
        "Parsing": "plural vocative",
        "POS": "Noun",
        "Group": 5
    },
    {
        "Ending": "es",
        "Parsing": "plural accusative",
        "POS": "Noun",
        "Group": 5
    },
    {
        "Ending": "erum",
        "Parsing": "plural genitive",
        "POS": "Noun",
        "Group": 5
    },
    {
        "Ending": "ebus",
        "Parsing": "plural dative",
        "POS": "Noun",
        "Group": 5
    },
    {
        "Ending": "ebus",
        "Parsing": "plural ablative",
        "POS": "Noun",
        "Group": 5
    }
]

推荐答案

问题不在于过滤,而在于从参数中获取l值的方式.

useParams返回一个对象,您应该从中提取l的值.例如:

// Note that this way `l` isn't the object, but an attribute of the object
const {l} = useParams();

Json相关问答推荐

PostgreSQL 12.17从JSON数组提取元素

在scala中将字符串列转换为 struct 的JSON映射

使用单元和非单元版本反序列化Rust中的枚举,而无需编写自定义反序列化程序

Jolt变换将字段移动到数组的每个元素中

属性错误:';ActivitiesClient';对象没有属性';base_url';

如何让JSON子查询在没有行的情况下返回空数组而不是NULL

如何使用模式注册中心创建从主题中取消本地化的ks qlDB表?

JOLT转换以基于对象属性过滤JSON数组

bash用jq获取第二条JSON记录

基于 JSON 字段的 Jolt 条件标志

使用jq根据对象中键的值查找对象

如何在 Apps 脚本中循环遍历 JSON 响应

为什么解析的字典相等而腌制的字典不相等?

如何从 HttpClient 解析 JSON 字符串?

json.decoder.JSONDecodeError:期望值:第 1 行第 1 列(字符 0)

从 HttpResponse 获取 json

如何安装 json gem - 无法构建 gem 原生扩展(mac 10.10)

JSON日期到Java日期?

JSON - 是否有任何 XML CDATA 类似功能?

在播放框架 JsObject 中解析 Json 数组