Pengenalan Pemprofilan (Node/DevTools) — tabiat pemasaan kecil
Buat pemprofilan secara berperingkat: ukur dengan console.time/timeEnd dan pemasa mudah, cari kod panas, ubah satu perkara dan ukur semula.
Pengenalan Pemprofilan (Node/DevTools) — tabiat pemasaan kecil ialah pelajaran Akademi JavaScript percuma di CoddyKit. Ini ialah pelajaran 3 daripada 3. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Akademi JavaScript, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Akademi JavaScript merangkumi sejumlah 3 pelajaran.
Mengapa pemprofilan?
Matlamat: Ukur → ubah → ukur semula.
- Gunakan console.time/timeEnd untuk pemasaan pantas
- Gunakan fungsi bantuan now() kecil untuk pemasaan manual
- Fokus pada kod panas sahaja
- Buat satu perubahan pada satu masa

Demonstrasi console.time
console.time memaparkan tempoh yang diambil oleh blok berlabel. Ini langkah pertama yang baik.
// Measure a small loop with console.time/timeEnd
console.time("sum");
let s = 0;
for (let i = 0; i < 100000; i = i + 1) {
s = s + i;
}
console.timeEnd("sum");
console.log("sum value:", s);

Fungsi bantuan pemasaan manual
Pemasaan manual membantu anda membalut sebarang fungsi dan membandingkan pelaksanaan dengan masukan yang sama.
// A tiny now() helper that works in many runtimes
const now = (typeof performance !== "undefined" && performance.now)
? function () { return performance.now(); }
: function () { return Date.now(); };
// Time a function manually
function timeFn(label, fn) {
const t1 = now();
const out = fn();
const t2 = now();
console.log(label + " ms:", (t2 - t1));
return out;
}
timeFn("small work", function () {
let x = 0;
for (let i = 0; i < 50000; i = i + 1) { x = x + i; }
return x;
});

Cari kod panas
Jejaki panggilan dan time untuk mengetahui bahagian yang menggunakan paling banyak kerja dalam aplikasi anda; optimumkan fungsi yang paling panas dahulu.
// Count calls and total time to find hot spots
const metrics = { calls: 0, totalMs: 0 };
function hotWork(n) {
const t1 = now();
let sum = 0;
for (let i = 0; i < n; i = i + 1) {
sum = sum + (i % 3);
}
const t2 = now();
metrics.calls = metrics.calls + 1;
metrics.totalMs = metrics.totalMs + (t2 - t1);
return sum;
}
// Simulate usage
for (let k = 0; k < 5; k = k + 1) {
hotWork(80000);
}
console.log("calls:", metrics.calls, "avg ms:", metrics.totalMs / metrics.calls);

Pemasaan sebelum dan selepas
Buat pengukuran sebelum dan selepas perubahan. Kekalkan masukan yang sama dan bandingkan nombor sahaja.
// Compare two approaches with the same input
const hay = [];
for (let i = 0; i < 2000; i = i + 1) { hay.push(String(i)); }
const needles = [];
for (let i = 0; i < 1000; i = i + 1) { needles.push(String(i * 2)); }
function slowIncludes() {
let count = 0;
for (const n of needles) {
if (hay.includes(n)) { count = count + 1; }
}
return count;
}
function fastSet() {
const set = new Set(hay);
let count = 0;
for (const n of needles) {
if (set.has(n)) { count = count + 1; }
}
return count;
}
const c1 = timeFn("includes run", slowIncludes);
const c2 = timeFn("set.has run", fastSet);
console.log("counts:", c1, c2);

Amalan pemasaan yang baik
Petua:
- Gunakan masukan yang sama merentas pelaksanaan.
- Panaskan sekali, kemudian buat pengukuran.
- Kurangkan pengelogan semasa pemasaan.
- Ubah satu perkara dan ukur semula.
- DevTools/Node mempunyai perakam; mulakan dengan console.time yang mudah.

Kuiz asas console.time
Semakan pantas: Alat pemasaan pantas.

Imbas kembali
Imbas kembali: Mulakan dengan console.time dan fungsi bantuan now() yang kecil. Cari kod panas, buat perubahan mudah dan ukur semula dengan masukan yang sama.

Pelajari JavaScript dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 59
- Pelajaran
- 200
Soalan Lazim
Adakah pelajaran “Pengenalan Pemprofilan (Node/DevTools) — tabiat pemasaan kecil” percuma?
Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Akademi JavaScript, termasuk “Pengenalan Pemprofilan (Node/DevTools) — tabiat pemasaan kecil”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Akademi JavaScript merangkumi sejumlah 3 pelajaran.
Apakah yang akan saya pelajari dalam “Pengenalan Pemprofilan (Node/DevTools) — tabiat pemasaan kecil”?
Buat pemprofilan secara berperingkat: ukur dengan console.time/timeEnd dan pemasa mudah, cari kod panas, ubah satu perkara dan ukur semula. Anda berlatih Akademi JavaScript menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Akademi JavaScript?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Akademi JavaScript di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 3 daripada 3.
Berapa lamakah pelajaran “Pengenalan Pemprofilan (Node/DevTools) — tabiat pemasaan kecil” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Akademi JavaScript ini?
Ya. Setiap pelajaran Akademi JavaScript menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Asas Big-O, Laluan Panas berbanding Sejuk (Kemenangan Pemula)
- Mengelakkan Kebocoran — Penutupan, Pemasa dan Rujukan
- Pengenalan Pemprofilan (Node/DevTools) — tabiat pemasaan kecil