Structures circulaires dans la sérialisation JSON
Lorsque vous rencontrez des structures circulaires lors de la conversion d'objets en JSON, la fonction JSON.stringify() provoque une "TypeError : Conversion de la structure circulaire en JSON" ou erreur "TypeError : valeur d'objet cyclique". Pour résoudre ce problème, vous pouvez supprimer les références circulaires et chaîner les données restantes.
Dans Node.js, le module utilitaire intégré fournit la méthode util.inspect(object). Cette fonction remplace automatiquement les références circulaires par "[Circulaire].".
Importation du module
Avant d'utiliser la méthode, vous devez l'importer :
import * as util from 'util';
Utilisation
Pour utiliser la méthode, passez simplement l'objet à inspecté :
console.log(util.inspect(myObject));
Options
Vous pouvez également passer un objet d'options optionnel pour personnaliser l'inspection :
inspect(myObject[, options: {showHidden, depth, colors, showProxy, ...moreOptions}]);
Exemple
Compte tenu de ce qui suit object :
var obj = { a: "foo", b: obj };
À l'aide de util.inspect, vous pouvez chaîner l'objet comme suit :
util.inspect(obj);
Cela produira la sortie suivante de type JSON :
{ a: 'foo', b: '[Circular]' }
Vous pouvez désormais envoyer l'objet sérialisé en toute sécurité sans rencontrer d'erreurs de référence circulaire.
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!