在 MongoDB 数据库中,Array 是一种常见的数据类型,而在使用 Mongoose 进行开发时,对 Array 的操作也是不可避免的。本文将介绍 Mongoose 中对 Array 数据的操作技巧,包括增加、删除、更新和查询等。
1. 增加 Array 数据
1.1 push
push 方法用于向 Array 中新增一个元素,该方法会直接修改原始数据。示例如下:
-- -------------------- ---- ------- ----- ---------- - --- ----------------- ----- ------- -------- -------- --- ----- ---- - ---------------------- ------------ ----- ---- - --- ------ ----- ------ -------- -- --- ----------------------------- ------------
1.2 addToSet
addToSet 方法用于向 Array 中新增一个元素,如果该元素已经存在,则不进行操作。示例如下:
-- -------------------- ---- ------- ----- ---------- - --- ----------------- ----- ------- -------- -------- --- ----- ---- - ---------------------- ------------ ----- ---- - --- ------ ----- ------ -------- -- --- --------------------------------- --------------------------------- ------------
2. 删除 Array 数据
2.1 pull
pull 方法用于从 Array 中删除一个元素,该方法会直接修改原始数据。示例如下:
-- -------------------- ---- ------- ----- ---------- - --- ----------------- ----- ------- -------- -------- --- ----- ---- - ---------------------- ------------ ----- ---- - --- ------ ----- ------ -------- ----------- ----------- --- ----------------------------- ------------
2.2 pop
pop 方法用于从 Array 中删除最后一个元素,该方法会直接修改原始数据。示例如下:
-- -------------------- ---- ------- ----- ---------- - --- ----------------- ----- ------- -------- -------- --- ----- ---- - ---------------------- ------------ ----- ---- - --- ------ ----- ------ -------- ----------- ----------- --- ------------------- ------------
3. 更新 Array 数据
3.1 set
set 方法用于更新 Array 中指定位置的元素,该方法会直接修改原始数据。示例如下:
-- -------------------- ---- ------- ----- ---------- - --- ----------------- ----- ------- -------- -------- --- ----- ---- - ---------------------- ------------ ----- ---- - --- ------ ----- ------ -------- ----------- ----------- --- ------------------- ----------- ------------
3.2 update
update 方法用于更新 Array 中符合条件的元素,该方法会直接修改原始数据。示例如下:
-- -------------------- ---- ------- ----- ---------- - --- ----------------- ----- ------- -------- -------- --- ----- ---- - ---------------------- ------------ ----- ---- - --- ------ ----- ------ -------- ----------- ----------- --- --------------------- ----------- - ---- --------- - -- - ----- - -- --------- - --- ------------
4. 查询 Array 数据
4.1 $in
$in 操作符用于查询 Array 中包含指定元素的文档。示例如下:
const userSchema = new mongoose.Schema({ name: String, hobbies: [String] }); const User = mongoose.model('User', userSchema); const users = await User.find({ hobbies: { $in: ['reading'] } });
4.2 $all
$all 操作符用于查询 Array 中同时包含多个指定元素的文档。示例如下:
const userSchema = new mongoose.Schema({ name: String, hobbies: [String] }); const User = mongoose.model('User', userSchema); const users = await User.find({ hobbies: { $all: ['reading', 'swimming'] } });
总结
本文介绍了 Mongoose 中对 Array 数据的操作技巧,包括增加、删除、更新和查询等。对于开发者来说,了解这些技巧可以更加高效地操作 Array 数据,提高开发效率。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/658bfc86eb4cecbf2d14e7ed