我有两个数组(models和modelsErrors),我想映射reuslt并将它们合并,如果输入如下:

models=['user', 'employee', 'customers'];
modelsErrors=['userError', 'employeeError', 'customersError'];


所需的输出应为:

Results=[{model: user, err: userError}, {model: employee, err: employeeError}, {model: customers, err: customersError}]


我猜有可能使用.map的javascript;如果不是,我正在寻找一种干净的方法,例如.map()函数:我的尝试:

    models=['user', 'employee', 'customers'];
    modelsErrors=['userError', 'employeeError', 'customersError'];
    var results = models.map(function(model){
        return {model: model, err: modelsErrors[model]}
    })

    console.log(results);


如果找不到地图,我正在寻找一种干净的方法。
如果您需要更多说明,请告诉我
谢谢

最佳答案

你快到了;只需使用回调的index参数来查找另一个数组的对应值:

models.map(function(value, index) {
    return {
        model: value,
        err: modelsErrors[index]
    };
});

关于javascript - 在javascript/node或其他干净方法中进行映射,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27894891/

10-10 07:49