Rumah  >  Artikel  >  hujung hadapan web  >  Menghafal dalam JavaScript

Menghafal dalam JavaScript

Patricia Arquette
Patricia Arquetteasal
2024-11-06 07:36:02259semak imbas

Memorização em JavaScript

Penghafalan (atau "penghafalan") ialah teknik pengoptimuman yang menyimpan cache hasil fungsi yang berat atau memakan masa, supaya panggilan masa hadapan dengan hujah yang sama lebih pantas. Penghafalan amat berguna dalam fungsi tulen, di mana set input yang sama sentiasa menghasilkan hasil yang sama.

Bagaimana Penghafalan Berfungsi?

Apabila fungsi yang dihafal dipanggil buat kali pertama dengan hujah tertentu, ia melaksanakan pengiraan dan menyimpan hasilnya dalam cache. Pada panggilan berikutnya dengan hujah yang sama, fungsi mengembalikan hasil terus daripada cache, mengelakkan pengiraan berulang.

Pelaksanaan Asas Hafazan

function memoize(fn) {
  const cache = {};

  return function(...args) {
    const key = JSON.stringify(args); // Cria uma chave única para os argumentos

    if (cache[key]) {
      console.log("Resultado em cache");
      return cache[key]; // Retorna o valor armazenado no cache
    }

    const result = fn(...args); // Calcula o valor
    cache[key] = result; // Armazena o resultado no cache

    return result;
  };
}

Contoh penggunaan:

function factorial(n) {
  if (n <= 1) return 1;
  return n * factorial(n - 1);
}

const memoizedFactorial = memoize(factorial);

console.log(memoizedFactorial(5)); // Calcula e armazena em cache
console.log(memoizedFactorial(5)); // Recupera do cache

Faedah Menghafal

  • Pengurangan Pemprosesan: Elakkan pengiraan berulang, yang meningkatkan prestasi.
  • Ideal untuk Fungsi Rekursif: Mempercepatkan pemprosesan fungsi yang perlu dipanggil berbilang kali dengan nilai yang sama.
  • Cekap pada Fungsi Tulen: Hafalan berfungsi paling baik apabila fungsi mengembalikan nilai yang sama untuk hujah yang sama. Aplikasi Biasa Menghafaz
  • Pengiraan Matematik: Seperti faktorial, Fibonacci, dsb.
  • Panggilan API: Menghalang panggilan API pendua dengan parameter yang sama.
  • Operasi Kos Tinggi: Pemprosesan data dan manipulasi kompleks.

Ringkasan
Menghafal dalam JavaScript ialah teknik yang berkuasa untuk meningkatkan kecekapan kod dan mempercepatkan prestasi dalam operasi berulang, pengiraan yang mahal.

Atas ialah kandungan terperinci Menghafal dalam JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn