1. ホーム
  2. javascript

[解決済み] コールバックを含むJavaScriptコードの実行時間を測定するにはどうすればよいですか?

2022-03-23 18:34:08

質問

を使って実行しているJavaScriptのコードがあります。 node.js インタプリタです。

for(var i = 1; i < LIMIT; i++) {
  var user = {
    id: i,
    name: "MongoUser [" + i + "]"
  };
  db.users.save(user, function(err, saved) {
    if(err || !saved) {
      console.log("Error");
    } else {
      console.log("Saved");
    }
  });
}

これらのデータベースへの挿入操作にかかる時間は、どのように計測すればよいのでしょうか。このコードの部分の後と前の日付の値の差を計算することはできますが、コードの非同期の性質のため、それは正しくないと思われます。

解決方法は?

Node.jsを使用する console.time() console.timeEnd() :

var i;
console.time("dbsave");

for(i = 1; i < LIMIT; i++){
    db.users.save({id : i, name : "MongoUser [" + i + "]"}, end);
}

end = function(err, saved) {
    console.log(( err || !saved )?"Error":"Saved");
    if(--i === 1){console.timeEnd("dbsave");}
};