You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何同时按key和value条件过滤对象,检测教学医院相关字段空值

问题原因

你原有代码的filter逻辑存在逻辑冲突:filter每次迭代仅处理单个键值对,要求单个key同时匹配Teaching Hospital Name和Teaching Hospital Tax ID两个完全不同的字段名,该判定永远不成立,因此永远返回空结果。

实现方案

两种实现方式,可根据后续扩展需求选择:

方案1:直接判定指定字段(性能更高,适合固定字段规则)

// 取出两个目标字段的值
const hospitalName = item['Teaching Hospital Name']
const hospitalTaxId = item['Teaching Hospital Tax ID']
const result = {}
// 匹配「Name非空、Tax ID为空」规则时生成返回结果
if (hospitalName?.trim() && !hospitalTaxId?.trim()) {
  result['Teaching Hospital Tax ID'] = hospitalTaxId
}

方案2:遍历对象实现(适合后续扩展多组同类型校验规则)

// 先判定业务规则是否触发
const isRuleMatched = item['Teaching Hospital Name']?.trim() && !item['Teaching Hospital Tax ID']?.trim()
// 过滤对应键后转回对象格式
const result = Object.fromEntries(
  Object.entries(item).filter(([key]) => 
    isRuleMatched && key === 'Teaching Hospital Tax ID'
  )
)
验证结果

使用你提供的示例对象测试,两种方案返回结果均符合要求:

{ "Teaching Hospital Tax ID": "" }

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 22:24:00