2015-04-17 40 views
-1

我有以下代碼:對象不修改async.each

async.each(strategies, function (strategy, callback) { 
    filterEventTypes(strategy.eventType, function (err, res) { 
     strategy.filters = []; 
     var filter = {}; 
     filter.eventTypeIds = res; 
     strategy.filters.push(filter); 
     console.log('filter:' + JSON.stringify(filter)); 
     console.log('strategy: ' + JSON.stringify(strategy)); 
     ret.push(strategy); 
     callback(null, res); 
    }); 
}, function (err) { 
    err && callback(err, null); 
    callback(null, ret); 
}); 

濾波器輸出以下:{"eventTypeIds":["1"]},然而,該策略對象不被修改。

如何修改策略對象以將其添加到ret數組中?

+2

策略對象包含什麼?或者你想擴展它? –

+0

這是一個簡單的JSON對象,我想擴展它,添加更多屬性。 – Ricardo

+0

你爲什麼忽略錯誤?你爲什麼多次調用'callback'?什麼是'ret'? – Bergi

回答

0

策略是一個貓鼬對象,查詢應該用lean()函數完成以返回一個javascript對象。