Écoute des modifications de variables en JavaScript avec Proxy et Observable Slim
JavaScript ne dispose pas d'un événement natif qui se déclenche lorsque la valeur d'une variable change. Cela peut poser des problèmes lors de la surveillance des données dans les applications. Cependant, des solutions modernes ont émergé pour répondre à ce besoin.
Objet Proxy
Introduit en 2018, l'objet Proxy offre un mécanisme puissant pour intercepter et répondre aux modifications apportées à un objet. Il vous permet de définir un gestionnaire d'ensemble comme ceci :
const targetObj = {}; const targetProxy = new Proxy(targetObj, { set: function (target, key, value) { console.log(`${key} set to ${value}`); target[key] = value; return true; } });
Cet exemple montre comment enregistrer la clé et la nouvelle valeur chaque fois qu'une propriété de targetObj change.
Inconvénients du proxy Objet
Observable Slim for Nested Objects
Pour les scénarios impliquant des modifications d'objets imbriqués, Observable Slim fournit une solution sur mesure :
const test = {testing:{}}; const p = ObservableSlim.create(test, true, function(changes) { console.log(JSON.stringify(changes)); });
Dans cet exemple, les modifications apportées à Les propriétés de test.testing seront enregistrées sur la console au format JSON.
Conclusion
Bien qu'il était autrefois difficile de surveiller les changements de variables dans JavaScript, Proxy et Observable Slim maintenant fournir des solutions efficaces pour des scénarios simples et complexes. Proxy excelle dans le suivi des modifications apportées aux objets individuels, tandis qu'Observable Slim gère facilement les objets imbriqués.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!