for (var i = 0; i < takusan; i++) { omotai(i, function () { おやっ? }); } これコールバックの中のものどうやって取るんだ?(だいたい無理) Promiseが使える環境なら、迷わず書けます。 予めPromise化しておくと便利です。bluebirdなどPromise化を助けてくれるライブラリを使うのもいいでしょう。 function omotaiPromise(arg) { new Promise(function (resolve, reject) { omotai(arg, function (err, result) { if (err != null) { reject(err); return; } resolve(result); }); }); }