因为uid是唯一的,所以遍历时有遇到匹配结果时可以直接break,这样可能有助于提高效率。 for (let idx in data.ArrayList) { if (data.ArrayList[idx].uid == 'uid2') { data.ArrayList[idx].member.push({ name: "增加的", age: 15 }); break; } }
怎么定位记录中Array中的某项并加以修改?云数据库中数据结构如下: { "_id": "dfajslfad", "ArrayList": [ { "uid": "uid1", "member": [ { "name": "张三", "age": 20 }, { "name": "李四", "age": 30 } ] }, { "uid": "uid2", "member": [ { "name": "王五", "age": 25 }, { "name": "赵六", "age": 31 } ] } ] } 其中 uid 是全局唯一的,期望通过_id 和 uid 定位到某项具体的一个数组内容,然后再修改。 例如:我想修改uid为 uid2 的数组内容中的 member ,为期增加一个 {name:"增加的",age:15},这个该如何写呢? 不希望出现两次查询。 谢谢各位大神。
2022-02-26