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

如何在Firestore文档中添加带动态日期键的Map(JS实现)

Firestore动态Map键名设置问题解决

问题

使用JavaScript向Firestore文档添加Map结构时,现有代码可正常执行,但Map的键名是固定字符串dateString,需要替换为变量dateString的实际值(示例中为"24/02/2023")。

原代码:

dateString = "24/02/2023"

let dayStatusDetails =  { dateString : {
    status: day_status,
    date:   status_date,
    note:   day_note
}}

await createDayStatus(doc_id, dayStatusDetails)

解决方法

核心是使用ES6计算属性名语法,将变量值作为对象键名。修改后的dayStatusDetails定义如下:

dateString = "24/02/2023"

// 用方括号包裹变量,将其值作为Map的键名
let dayStatusDetails =  { [dateString] : {
    status: day_status,
    date:   status_date,
    note:   day_note
}}

await createDayStatus(doc_id, dayStatusDetails)

配套写入函数

以下是用于向Firestore写入数据的createDayStatus函数:

export const createDayStatus = (id, dayStatusDetails) => {
    return dailyStatusCollection.doc(id).set(dayStatusDetails ,{ merge: true })
}

效果展示

Firestore文档中Map的键为实际日期值

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 00:57:27