2016-04-30 5 views
0

私はdatebaseからデータを引き出したアプリケーションを持っている:部分文字列メソッドを使用するとアプリケーションがハングするのはなぜですか?

db.books.find().sort({ _id: 1 }).limit(count).toArray(function (err, results) { 
    if (err) { 
     next(err, null); 
    } else { 
     next(null, results); 
    } 
}); 

各書籍は、長い文章で説明しているが、私は各書籍の全文を取得する必要はありません、だから私はmapメソッドを使用することにしました結果を投影するため、私は説明のための文字の数を取得することができるように:

db.books.find().sort({ _id: 1 }).limit(count) 
    .map(function(item) { 
     return { 
      description: item.description.substring(0, 50), 
      ,.... 
     } 
    }).toArray(function (err, results) { 
     if (err) { 
      next(err, null); 
     } else { 
      next(null, results); 
     } 
}); 

が、私はsubstringメソッドを使用する場合、アプリケーションがハングし、私は結果を見ることはできません。

+1

log.stcriptionのログに戻る前にログステートメントを追加してログに記録されるかどうかを確認できますか? – Ewald

+0

'item.description.slice(0、50)、' – Redu

+0

を試してください@Ewald助けてくれてありがとう。 –

答えて

1

悪い!いくつかの本は説明がありませんでした、彼らはundefinedでした。

関連する問題