Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Mengesan Perubahan Pembolehubah JavaScript?
Soalan Asal:
Adakah terdapat peristiwa dalam JavaScript yang tercetus apabila nilai pembolehubah tertentu diubah suai? Sila pertimbangkan penyelesaian yang melibatkan jQuery.
Jawapan:
Menggunakan Objek Proksi:
Sehingga 2018, objek Proksi menyediakan mekanisme yang berkesan untuk memantau dan memintas perubahan sifat objek. Ia berfungsi dengan mencipta objek proksi yang membalut objek sasaran.
var targetObj = {}; var targetProxy = new Proxy(targetObj, { set: function (target, key, value) { console.log(`${key} set to ${value}`); target[key] = value; return true; } }); targetProxy.hello_world = "test"; // console: 'hello_world set to test'
Penghadan:
Memerhati Objek Bersarang:
Untuk memerhati perubahan dalam objek bersarang, perpustakaan khusus seperti Observable Slim menawarkan penyelesaian yang lebih komprehensif.
var test = {testing:{}}; var p = ObservableSlim.create(test, true, function(changes) { console.log(JSON.stringify(changes)); }); p.testing.blah = 42; // console: [{"type":"add","target":{"blah":42},"property":"blah","newValue":42,"currentPath":"testing.blah",jsonPointer:"/testing/blah","proxy":{"blah":42}}]
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengesan Perubahan Pembolehubah JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!