javascript - 遍历文档中的 CouchDB 字段 (validate_doc_update)

标签 javascript validation couchdb

我正在尝试遍历 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/

相关文章:

jquery - 简单的 CouchDB + jQuery 移动应用程序可以在桌面浏览器中正常加载列表,只是不能在移动设备上加载

authentication - CouchDB 代理身份验证不起作用

javascript - Grails Assets 管道 : how to find image url dynamically in javascript (with knockout)

javascript - 我应该将 DOM 操作 JS 脚本放在 `<head>` 中还是在结束 `</body>` 之前?

jquery - MVC 3 : ActionFilterAttribute and OnActionExecuting don't fire

javascript - 忽略单词并删除区分大小写和空格以匹配

javascript - 调用router中的中间件函数

javascript - 使用 rhandsontable 进行数字和条件格式设置

javascript - 循环 Vue 组件数组

java - 如何检查日期字符串的有效性?