You need to enable JavaScript to run this app. 如何修改JS奖学金筛选代码,下拉选大一或大二均展示对应适配奖学金
优惠活动
大模型
产品
解决方案
定价
更多

如何修改JS奖学金筛选代码,下拉选大一或大二均展示对应适配奖学金

解答

你的现有代码结构没有问题,仅修改两处代码即可实现单奖学金适配多个年级的需求,不需要重构整体逻辑:

  • 修改getScholarships方法内的奖学金standing字段,从单字符串改为数组类型,即可给单个奖学金配置多个适配年级
  • 修改filterStanding筛选函数的判断逻辑,从全等匹配改为数组包含匹配,同时兼容原有单值配置的写法

完整修改示例

修改筛选逻辑

function filterStanding(scholarship) {
  if (!filters.standing.length) return true
  // 同时兼容standing为单字符串(原有配置)和数组(多值配置)两种格式
  const allowedStandings = Array.isArray(scholarship.standing) ? scholarship.standing : [scholarship.standing]
  return allowedStandings.includes(filters.standing)
}

多值配置奖学金示例

function getScholarships() {
  return [
  {
      name: "大一大二可申请的奖学金示例",
      link: "#",
      need: "yes",
      standing: ["Freshmen", "Sophomore"], // 配置多个适配年级
    },
    {
      name: "Scholarship 2",
      link: "#",
      need: "no",
      standing: "Sophomore", // 原有单值写法依然可正常运行
    },
    {
      name: "Scholarship 3",
      link: "#",
      need: "yes",
      standing: "Junior",
    }
];
}

其他代码不需要做任何改动,修改后即可实现你需要的筛选效果。

内容的提问来源于stack exchange,提问作者Samuel Mills

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.16 13:45:01