Javascript獲取For循環所用時間


第一種:

 1 let tOne = new Date().getTime();
 2 let n = new Date();
 3 let hour = n.getHours() < 10 ? "0" + n.getHours() : n.getHours();
 4 let minute = n.getMinutes() < 10 ? "0" + n.getMinutes() : n.getMinutes();
 5 let second = n.getSeconds() < 10 ? "0" + n.getSeconds() : n.getSeconds();
 6 console.error(hour + ":" + minute + ":" + second); // 循環開始時間
 7 let arr = new Array(50000);
 8 //   for (let i = 0; i < arr.length; i++) {
 9 //     console.log(i); //3.272 + 3.3 + 3.201 + 3.075 + 3.173
10 //   }
11 let len = 0;
12 for (let i = 0, len = arr.length; i < len; i++) {
13     console.log(i); // 3.371 + 3.017 + 2.991 + 3.077 + 3.122
14 }
15 let tTwo = new Date().getTime();
16 let nn = new Date();
17 hour = nn.getHours() < 10 ? "0" + nn.getHours() : nn.getHours();
18 minute = nn.getMinutes() < 10 ? "0" + nn.getMinutes() : nn.getMinutes();
19 second = nn.getSeconds() < 10 ? "0" + nn.getSeconds() : nn.getSeconds();
20 console.error(hour + ":" + minute + ":" + second); // 循環結束時間
21 console.error("循環所用時間:" + (tTwo - tOne) / 1000 + "s"); // 循環用時

未執行For循環之前,獲取一個時間tOne;循環結束時再獲取一個時間tTwo;

結束時間 - 開始時間 = 所用時間

這里的循環,如果數據量比較大,最好用一個變量把數組的長度存起來,這樣長度只計算一次,然后緩存了,速度會更快。

第二種:

console有.time和.timeEnd方法,可以來記錄消耗的時間

  let arr = new Array(5000);
  console.time("zhengshize");
  let len = 0;
  for (let i = 0, len = arr.length; i < len; i++) {
    console.log(i);
  }
  console.timeEnd("zhengshize");

打印出來的效果是這樣:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM