Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
Objet sérialisable
Unobjet sérialisable est un objet qui peut être sérialisé puis désérialisé dans n'importe quel environnement JavaScript (« realm »).Cela permet, par exemple, de le stocker sur un disque puis de le restaurer, de le cloner avecstructuredClone(), ou de le partager entre des workers à l'aide deDedicatedWorkerGlobalScope.postMessage().
La sérialisation peut ne pas inclure toutes les propriétés et autres aspects de l'objet d'origine.Par exemple, la sérialisation d'unDOMException doit inclure les propriétésname etmessage, mais l'inclusion d'autres propriétés dépend de l'implémentation.En conséquence, un objet désérialisé peut ne pas être un clone ou une copie identique de l'objet d'origine.Le nouvel objet désérialisé sera cependant unecopie profonde, donc toutes les propriétés qui auront été sérialisées à partir de l'objet d'origine puis désérialisées dans le nouvel objet ne partageront aucune référence avec l'objet d'origine.
Dans certains cas, lors de la sérialisation et de la désérialisation d'un objet, il est pertinent de transférer certaines ressources plutôt que de créer une copie.Les objets pouvant être transférés sont appelésobjets transférables.
Dans cet article
Objets pris en charge
Toutes les valeurs primitives sont sérialisables.Tous les objets ne sont pas des objets sérialisables.Les objets pouvant être sérialisés sont listés dans :L'algorithme de clonage structuré > Types pris en charge.
Note :Les objets sérialisables sont annotés dans lesfichiers Web IDL(angl.) avec l'attribut[Serializable].