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

Firestore查询结果按region分组 重复区域对应gender值存入数组实现方法

实现方法

你只需要额外定义一个对象存储分组结果,在遍历文档的时候做追加处理即可,修改后的完整代码如下:

// 初始化空对象用于存储分组结果
const regionGenderMap = {}

module.where("gender", "array-contains", 'female')
    .get()
    .then((querySnapshot) => {
        querySnapshot.forEach((doc) => {
            const data = doc.data()
            // 统一转小写避免大小写不同导致分组错误
            const regionKey = data.region[0].toLowerCase()
            const genderVal = data.gender[0]
            // 若当前region未在分组中存在,先初始化空数组
            if(!regionGenderMap[regionKey]) {
                regionGenderMap[regionKey] = []
            }
            // 把当前gender追加到对应region的数组里
            regionGenderMap[regionKey].push(genderVal)
        })
        // 遍历结束后可直接打印查看最终分组结果
        console.log(regionGenderMap)
    })
    .catch((error) => {
        console.log("Error getting documents: ", error);
    });
结果说明

最终得到的regionGenderMap结构就是你需要的分组效果,示例结构如下:

{
  "beijing": ["female", "female", "female"],
  "shanghai": ["female", "female"]
}

如果需要单独取某个region的gender数组,直接通过regionGenderMap['你的region名']即可访问。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 01:54:05