MongoDB $isArray 运算符
MongoDB中提供了不同类型的在聚合流水线阶段使用和$ IsArray的运算符就是其中之一rray表达式运算符。此运算符用于检查指定的表达式是否为数组。或者换句话说,此运算符用于检查操作数是否为数组。如果指定的表达式是数组,则此运算符将返回true。否则,它将返回false。
句法:
{ $isArray: [ ] }
这里,表达式必须是有效的表达式。
例子:
在以下示例中,我们正在使用:
Database: GeeksforGeeks
Collection: arrayExample
Document: three documents that contain the details in the form of field-value pairs.
使用 $isArray 运算符:
在此示例中,我们将使用 $isArray运算符检查 vegiie 和 name 字段的值是否为数组。这里,checkResult1 的值为真,因为 vegiie 是一个数组,而 checkResult2 的值为假,因为 name 不是一个数组。
db.arrayExample.aggregate([
... {$match: {name: "Bongo"}},
... {$project: {
... checkResult1: {$isArray: "$vegiie"},
... checkResult2: {$isArray: "$name"}}}])
在嵌入式文档中使用 $isArray 运算符:
在本例中,在本例中,我们将使用 $isArray运算符检查 favGame.indoorGames 字段的值是否为数组。这里,checkResult1 的值为真,因为 favGame.indoorGames 是一个数组,而 checkResult2 的值也为真,因为 $isArray运算符的给定表达式是一个数组(即 [1, 3, 4])。
db.arrayExample.aggregate([
... {$match: {name: "Piku"}},
... {$project: {
... checkResult1: {$isArray: "$favGame.indoorGames"},
... checkResult2: {$isArray: [[1, 3, 4]]}}}])