我正在尝试遍历 CouchDB 文档中的字段并检查字段的旧版本和新版本是否相同(作为我的 validate_doc_update 的一部分)。但是,我想做相当于“文档中的 foreach 字段,检查以确保它们相同”,而不是必须说类似的话
oldrev.document.field1 == newrev.document.field1, oldrev.document.field2 == newrev.document.field2,
呜呜呜。有没有办法 使用 CouchDB 字段执行此操作,还是必须指定每个字段的名称?最好不要将它们全部键入,并且如果我们更改字段名称,则不必返回并进行调整。
最佳答案
一个JS for in
循环应该足够了:
for (var key in newrev) {
if (newrev.hasOwnProperty(key) {
if (oldrev[key] === newrev[key]) {
// they are the same
}
}
}
这里需要注意一件事,那就是在修订之间删除/添加字段可能更难验证。
我很确定Object.keys
SpiderMonkey 可用,因此您可能需要使用它来比较新旧 key 的数量。
关于javascript - 遍历文档中的 CouchDB 字段 (validate_doc_update),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11973853/