db.command.aggregate.dateFromParts
1. 操作符描述
功能:给定日期的相关信息,构建并返回一个日期对象。
声明:db.command.aggregate.dateFromParts(object)
2. 操作符参数
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| year | number | 否 | 年 |
| month | number | 否 | 月 |
| day | number | 否 | 日 |
| hour | number | 否 | 小时 |
| minute | number | 否 | 分钟 |
| second | number | 否 | 秒 |
| millisecond | number | 否 | 毫秒 |
| timezone | string | 否 | 时区 |
| isoWeekYear | number | 否 | isoWeekYear |
| isoWeek | number | 否 | isoWeek |
| isoDayOfWeek | number | 否 | isoDayOfWeek |
语法如下:
db.command.aggregate.dateFromParts({
year: <year>,
month: <month>,
day: <day>,
hour: <hour>,
minute: <minute>,
second: <second>,
millisecond: <ms>,
timezone: <tzExpression>
})
您也可以使用 ISO 8601 的标准:
db.command.aggregate.dateFromParts({
isoWeekYear: <year>,
isoWeek: <week>,
isoDayOfWeek: <day>,
hour: <hour>,
minute: <minute>,
second: <second>,
millisecond: <ms>,
timezone: <tzExpression>
})
3. 示例代码
// 云函数环境下示例代码
const tcb = require('@cloudbase/node-sdk')
const app = tcb.init({
env: 'xxx'
})
const db = app.database()
const $ = db.command.aggregate
exports.main = async (event, context) => {
const res = await db
.collection('dates')
.aggregate()
.project({
_id: 0,
date: $.dateFromParts({
year: 2017,
month: 2,
day: 8,
hour: 12,
timezone: 'America/New_York'
})
})
.end()
console.log(res.data)
}
输出如下:
{
"date": ISODate("2017-02-08T17:00:00.000Z")
}