這裏是我的javascript代碼,這是很簡單的:什麼是Chrome的這種差距意味着devtools輪廓火焰圖表
console.profile();
var count = 1000;
var fn1 = function() {
for (var i = 0; i < count; i++) {
console.log("THIS IS FN1");
}
}
var fn2 = function() {
for (var i = 0; i < count; i++) {
console.log("THIS IS FN2");
}
fn1();
}
fn2();
console.profileEnd();
,這是我的個人資料截圖:
爲什麼會出現在圖像中有一些差距,就像我的黑色矩形標記的一樣?
這個差距是什麼意思?
你應該看到的是'fn2'頂部的1000個小'log'調用。然而,由於'log'調用幾乎沒有時間,並且由於對配置文件數據進行採樣,所以最終會有一些調用被合併爲一個塊,而其他調用將被忽略。您可以通過在DevTools設置中打開**「高分辨率CPU分析」**來增加採樣間隔。然後你應該得到這樣的東西:http://i.imgur.com/E67WWqX.png。然而,它仍然沒有解釋爲什麼'f2'被分成幾塊,即使只被調用一次。 –