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

如何筛选对象中特定类型的属性,仅提取返回布尔类型属性集合

实现方案

你可以通过Object.entries()搭配数组的filter()方法快速实现,核心逻辑是遍历对象属性后判断值的类型是否为boolean:

const analysis = {
  cultural1: true,
  cultural2: false,
  cultural3: true,
  cultural4: true,
  culturalScore: 75,
  environment1: true,
  environment2: true,
  environment3: true,
  environment4: true,
  environmentScore: 100,
  createdAt: "2021-09-15 11:43:58 -0400",
  id: 543,
  review: 'Lorem ipsum odor'
}

// 方案1:得到 [ [键, 值], [键, 值] ] 格式的数组,包含所有布尔属性的键和值
const boolEntries = Object.entries(analysis).filter(([key, value]) => typeof value === 'boolean')

// 方案2:如果只需要布尔属性的键名组成的数组
const boolKeys = Object.keys(analysis).filter(key => typeof analysis[key] === 'boolean')

// 方案3:如果只需要布尔属性的值组成的数组
const boolValues = Object.values(analysis).filter(value => typeof value === 'boolean')

以方案1为例,输出结果如下:

[
  ["cultural1", true],
  ["cultural2", false],
  ["cultural3", true],
  ["cultural4", true],
  ["environment1", true],
  ["environment2", true],
  ["environment3", true],
  ["environment4", true]
]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 01:06:06