0
今天我的地圖函數開始報告斷言失敗13076'遞歸toObject'代碼。它昨天工作得很好。'遞歸toObject'13076斷言在MongoDB中失敗
這是我的地圖功能:
function() {
for(i=0; i<this.values.length; i++) {
emit(this.values[i].id, {
'id': this.values[i].id,
'start_date': this.values[i].start_date,
'end_date': this.values[i].end_date,
'hash': this.values[i].hash,
'url': this.values[i].url});
}
}
我曾嘗試更換爲用foreach循環功能,但結果是一樣的。
什麼是範圍變量限制地圖功能單EMIT有趣的功能,工作得很好:
function() {
for(i=0; i<this.values.length; i++) {
if(this.values[i].id == myId) {
emit(this.values[i].id, {
'id': this.values[i].id,
'start_date': this.values[i].start_date,
'end_date': this.values[i].end_date,
'hash': this.values[i].hash,
'url': this.values[i].url});
}
}
}
我當然可以,直接在代碼中執行此映射,但是我不希望遇到這種有些時候我真的需要使用MapReduce時出錯。