Mendengar Perubahan Pembolehubah dalam JavaScript
Dalam JavaScript, adalah perkara biasa untuk menjejaki perubahan kepada pembolehubah, sama ada untuk nyahpepijat atau tujuan lain . Walaupun kaedah lama seperti Object.watch dan Object.observe sudah lapuk, penyelesaian yang lebih baharu telah muncul yang menyediakan fungsi yang lebih mantap dan berkesan.
Proksi: Pendekatan Moden
Diperkenalkan dalam ES6, objek Proksi membenarkan anda membungkus objek sedia ada dan memintas perubahan yang dibuat pada sifatnya. Ini menjadikannya sesuai untuk memantau perubahan pembolehubah:
const targetObj = {}; const targetProxy = new Proxy(targetObj, { set: (target, key, value) => { console.log(`${key} set to ${value}`); target[key] = value; return true; } });
Apabila anda menetapkan sifat pada objek proksi (cth., targetProxy.hello_world = "test"), fungsi setter dicetuskan dan mencatatkan perubahan ke konsol.
Memerhati Objek Kompleks
Proksi tidak selalunya sesuai untuk objek bersarang. Untuk kes ini, perpustakaan seperti Observable Slim menawarkan penyelesaian khusus. Observable Slim mencipta pembalut reaktif di sekeliling objek anda, menjejaki perubahan dan peristiwa menembak apabila ia berlaku:
const test = { testing: {} }; const p = ObservableSlim.create(test, true, (changes) => { console.log(JSON.stringify(changes)); }); p.testing.blah = 42; // Logs properties and changes in JSON format
Pertimbangan
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menjejaki Perubahan Pembolehubah dengan Berkesan dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!