console.time('label_name')
と console.timeEnd('label_name')
を使うと経過時間の測定が簡単にできる。
基本的な使い方
測りたい処理の開始時にconsole.time()
を呼び出す。このとき引数にラベル名を渡す必要がある。
計測終了したいタイミングでconsole.timeEnd()
を呼び出す。このとき引数には同じラベル名を渡す。
function loop(){
console.time("loop time");
for(var i =0; i < 1000000000; i++){}
console.timeEnd("loop time");
}
loop();
出力結果
loop time: 812.000ms
jQueryのDeferredと組み合わせて使う
便利だからDeferredと組み合わせて使う (※Deferredを使う必要性は特にない)
なんかJSONとってくる関数
$(function(){
// 宣言
function asyncFunction(){
console.time('measurement of time'); // 計測開始
var def = $.Deferred();
$.ajax({
url : 'hoge.json',
type: 'GET',
dataType : 'json'
}).then(function(json){
console.timeEnd('measurement of time'); // 計測終了(成功)
def.resolve(json);
},function(){
console.timeEnd('measurement of time'); // 計測終了(失敗)
def.reject('fail fail fail fail fail...!!');
});
return def.promise();
}
// 呼び出し
asyncFunction().then(function(json){
console.log(' :) ');
},function(){
console.log(' :( ');
});
});
出力結果
measurement of time: 5.000ms
:)
console便利
参考URL:Console API