MST

星途 面试题库

面试题:CouchDB复杂数据类型在Map函数中的转换处理

CouchDB文档中有一个字段,其值是一个数组,数组元素可能是对象,对象中有不同类型的属性,例如有'name'(字符串类型)和'age'(数值类型)。要求编写Map函数,将数组中的每个对象转换为一个新的对象,新对象只包含'name'和'age'字段,并且'age'字段值翻倍,最后输出新对象组成的数组作为Map函数的结果。
16.9万 热度难度
数据库CouchDB

知识考点

AI 面试

面试题答案

一键面试
function(doc) {
    if (doc.yourArrayField) {
        var newArray = doc.yourArrayField.map(function(item) {
            return {
                name: item.name,
                age: item.age * 2
            };
        });
        emit(null, newArray);
    }
}

请注意:

  1. 上述代码假设数组所在的字段名为 yourArrayField,实际应用中请替换为真实的字段名。
  2. 这段代码适用于CouchDB的MapReduce中的Map函数场景 。