语法如下:
db.command.aggregate.dayOfWeek(<日期字段>)
示例代码
假设集合 dates 有以下文档:
{
"_id": 1,
"date": ISODate("2019-05-14T09:38:51.686Z")
}
我们使用 dayOfWeek() 对 date 字段进行投影,获取对应的天数(一周中的第几天):
const $ = db.command.aggregate
db
.collection('dates')
.aggregate()
.project({
_id: 0,
dayOfWeek: $.dayOfWeek('$date')
})
.end()
输出如下:
{
"dayOfWeek": 3
}
AggregateCommand.dayOfYear(value: Expression<string>): Object
支持端:小程序 2.7.4, 云函数 0.8.1, Web聚合操作符。返回日期字段对应的天数(一年中的第几天),是一个介于 1 到 366 之间的整数。
参数
value: Expression<string>
日期字段
返回值
Object
API 说明
语法如下:
db.command.aggregate.dayOfYear(<日期字段>)
示例代码
假设集合 dates 有以下文档:
{
"_id": 1,
"date": ISODate("2019-05-14T09:38:51.686Z")
}
我们使用 dayOfYear() 对 date 字段进行投影,获取对应的天数(一年中的第几天):
const $ = db.command.aggregate
db
.collection('dates')
.aggregate()
.project({
_id: 0,
dayOfYear: $.dayOfYear('$date')
})
.end()
输出如下:
{
"dayOfYear": 134
}
AggregateCommand.hour(value: Expression<string>): Object
支持端:小程序 2.7.4, 云函数 0.8.1, Web聚合操作符。返回日期字段对应的小时数,是一个介于 0 到 23 之间的整数。
参数
value: Expression<string>
日期字段
返回值
Object
API 说明
语法如下:
db.command.aggregate.hour(<日期字段>)
示例代码
假设集合 dates 有以下文档:
{
"_id": 1,
"date": ISODate("2019-05-14T09:38:51.686Z")
}
我们使用 hour() 对 date 字段进行投影,获取对应的小时数:
const $ = db.command.aggregate
db
.collection('dates')
.aggregate()
.project({
_id: 0,
hour: $.hour('$date')
})
.end()
输出如下:
{
"hour": 9
}
AggregateCommand.isoDayOfWeek(value: Expression<string>): Object
支持端:小程序 2.7.4, 云函数 0.8.1, Web聚合操作符。返回日期字段对应的 ISO 8601 标准的天数(一周中的第几天),是一个介于 1(周一)到 7(周日)之间的整数。
参数
value: Expression<string>
日期字段
返回值
Object
API 说明
语法如下:
db.command.aggregate.month(<日期字段>)
示例代码
假设集合 dates 有以下文档:
{
"_id": 1,
"date": ISODate("2019-05-14T09:38:51.686Z")
}
我们使用 month() 对 date 字段进行投影,获取对应的 ISO 8601 标准的天数(一周中的第几天):
const $ = db.command.aggregate
db
.collection('dates')
.aggregate()
.project({
_id: 0,
isoDayOfWeek: $.isoDayOfWeek('$date')
})
.end()
输出如下:
{
"isoDayOfWeek": 2
}
AggregateCommand.isoWeek(value: Expression<string>): Object
支持端:小程序 2.7.4, 云函数 0.8.1, Web聚合操作符。返回日期字段对应的 ISO 8601 标准的周数(一年中的第几周),是一个介于 1 到 53 之间的整数。
参数
value: Expression<string>
日期字段
返回值
Object
API 说明
根据 ISO 8601 标准,周一到周日视为一周,本年度第一个周四所在的那周,视为本年度的第 1 周。
例如:2016 年 1 月 7 日是那年的第一个周四,那么 2016.01.04(周一)到 2016.01.10(周日) 即为第 1 周。同理,2016 年 1 月 1 日的周数为 53。
语法如下:
db.command.aggregate.isoWeek(<日期字段>)
示例代码
假设集合 dates 有以下文档:
{
"_id": 1,
"date": ISODate("2019-05-14T09:38:51.686Z")
}
我们使用 isoWeek() 对 date 字段进行投影,获取对应的 ISO 8601 标准的周数(一年中的第几周):
const $ = db.command.aggregate
db
.collection('dates')
.aggregate()
.project({
_id: 0,
isoWeek: $.isoWeek('$date')
})
.end()
输出如下:
{
"isoWeek": 20
}
AggregateCommand.isoWeekYear(value: Expression<string>): Object
支持端:小程序 2.7.4, 云函数 0.8.1, Web聚合操作符。返回日期字段对应的 ISO 8601 标准的天数(一年中的第几天)。
参数
value: Expression<string>
日期字段
返回值
Object
API 说明
此处的“年”以第一周的周一为开始,以最后一周的周日为结束。
语法如下:
db.command.aggregate.isoWeekYear(<日期字段>)
示例代码
假设集合 dates 有以下文档:
{
"_id": 1,
"date": ISODate("2019-05-14T09:38:51.686Z")
}
我们使用 isoWeekYear() 对 date 字段进行投影,获取对应的 ISO 8601 标准的天数(一年中的第几天):
const $ = db.command.aggregate
db
.collection('dates')
.aggregate()
.project({
_id: 0,
isoWeekYear: $.isoWeekYear('$date')
})
.end()
输出如下:
{
"isoWeekYear": 2019
}
AggregateCommand.millisecond(value: Expression<string>): Object
支持端:小程序 2.7.4, 云函数 0.8.1, Web聚合操作符。返回日期字段对应的毫秒数,是一个介于 0 到 999 之间的整数。
参数
value: Expression<string>
日期字段
返回值
Object
API 说明
语法如下:
db.command.aggregate.millisecond(<日期字段>)
示例代码
假设集合 dates 有以下文档:
{
"_id": 1,
"date": ISODate("2019-05-14T09:38:51.686Z")
}
我们使用 millisecond() 对 date 字段进行投影,获取对应的毫秒数:
const $ = db.command.aggregate
db
.collection('dates')
.aggregate()
.project({
_id: 0,
millisecond: $.millisecond('$date'),
})
.end()
输出如下:
{
"millisecond": 686
}
AggregateCommand.minute(value: Expression<string>): Object
支持端:小程序 2.7.4, 云函数 0.8.1, Web聚合操作符。返回日期字段对应的分钟数,是一个介于 0 到 59 之间的整数。
参数
value: Expression<string>
日期字段
返回值
Object
API 说明
语法如下:
db.command.aggregate.minute(<日期字段>)
示例代码
假设集合 dates 有以下文档:
{
"_id": 1,
"date": ISODate("2019-05-14T09:38:51.686Z")
}
我们使用 minute() 对 date 字段进行投影,获取对应的分钟数:
const $ = db.command.aggregate
db
.collection('dates')
.aggregate()
.project({
_id: 0,
minute: $.minute('$date')
})
.end()
输出如下:
{
"minute": 38
}
AggregateCommand.month(value: Expression<string>): Object
支持端:小程序 2.7.4, 云函数 0.8.1, Web聚合操作符。返回日期字段对应的月份,是一个介于 1 到 12 之间的整数。
参数
value: Expression<string>
日期字段
返回值
Object
API 说明
语法如下:
db.command.aggregate.month(<日期字段>)
示例代码
假设集合 dates 有以下文档:
{
"_id": 1,
"date": ISODate("2019-05-14T09:38:51.686Z")
}
我们使用 month() 对 date 字段进行投影,获取对应的月份:
const $ = db.command.aggregate
db
.collection('dates')
.aggregate()
.project({
_id: 0,
month: $.month('$date')
})
.end()
输出如下:
{
"month": 5
}
AggregateCommand.second(value: Expression<string>): Object
支持端:小程序 2.7.4, 云函数 0.8.1, Web聚合操作符。返回日期字段对应的秒数,是一个介于 0 到 59 之间的整数,在特殊情况下(闰秒)可能等于 60。
参数
value: Expression<string>
日期字段
返回值
Object
API 说明
语法如下:
db.command.aggregate.second(<日期字段>)
示例代码
假设集合 dates 有以下文档:
{
"_id": 1,
"date": ISODate("2019-05-14T09:38:51.686Z")
}
我们使用 second() 对 date 字段进行投影,获取对应的秒数:
const $ = db.command.aggregate
db
.collection('dates')
.aggregate()
.project({
_id: 0,
second: $.second('$date')
})
.end()
输出如下:
{
"second": 51
}
AggregateCommand.week(value: Expression<string>): Object
支持端:小程序 2.7.4, 云函数 0.8.1, Web聚合操作符。返回日期字段对应的周数(一年中的第几周),是一个介于 0 到 53 之间的整数。
参数
value: Expression<string>
日期字段
返回值
Object
API 说明
每周以周日为开头,每年的第一个周日即为 week 1 的开始,这天之前是 week 0。
语法如下:
db.command.aggregate.week(<日期字段>)
示例代码
假设集合 dates 有以下文档:
{
"_id": 1,
"date": ISODate("2019-05-14T09:38:51.686Z")
}
我们使用 week() 对 date 字段进行投影,获取对应的周数(一年中的第几周):
const $ = db.command.aggregate
db
.collection('dates')
.aggregate()
.project({
_id: 0,
week: $.week('$date')
})
.end()
输出如下:
{
"week": 19
}
AggregateCommand.year(value: Expression<string>): Object
支持端:小程序 2.7.4, 云函数 0.8.1, Web聚合操作符。返回日期字段对应的年份。
参数
value: Expression<string>
日期字段
返回值
Object
API 说明
语法如下:
db.command.aggregate.year(<日期字段>)
示例代码
假设集合 dates 有以下文档:
{
"_id": 1,
"date": ISODate("2019-05-14T09:38:51.686Z")
}
我们使用 year() 对 date 字段进行投影,获取对应的年份:
const $ = db.command.aggregate
db
.collection('dates')
.aggregate()
.project({
_id: 0,
year: $.year('$date')
})
.end()
输出如下:
{
"year": 2019
}
AggregateCommand.subtract(value: Expression[]): Object
支持端:小程序 2.7.4, 云函数 0.8.1, Web聚合操作符。将两个数字相减然后返回差值,或将两个日期相减然后返回相差的毫秒数,或将一个日期减去一个数字返回结果的日期。
参数
value: Expression[]
[<expression1>, <expression2>]
返回值
Object
API 说明
语法如下:
db.command.aggregate.subtract([<expression1>, <expression2>])
参数可以是任意解析为数字或日期的表达式。
示例代码
假设集合 scores 有如下记录:
{ "_id": 1, "max": 10, "min": 1 }
{ "_id": 2, "max": 7, "min": 5 }
{ "_id": 3, "max": 6, "min": 6 }
求各个记录的 max 和 min 的差值。:
const $ = db.command.aggregate
db.collection('scores').aggregate()
.project({
diff: $.subtract(['$max', '$min'])
})
.end()
返回结果如下:
{ "_id": 1, "diff": 9 }
{ "_id": 2, "diff": 2 }
{ "_id": 3, "diff": 0 }
标签:微信小程序
相关阅读 >>
微信小程序api 绘图导出图片canvastotempfilepath(object)
更多相关阅读请进入《微信小程序》频道 >>

Vue.js 设计与实现 基于Vue.js 3 深入解析Vue.js 设计细节
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者