From bf8e099b9c8b3c60d60b3712b4fc97b052c39887 Mon Sep 17 00:00:00 2001 From: julieng Date: Tue, 3 Aug 2021 08:03:23 +0200 Subject: convert content to md --- .../reference/errors/dead_object/index.md | 45 +++++++++++----------- 1 file changed, 23 insertions(+), 22 deletions(-) (limited to 'files/fr/web/javascript/reference/errors/dead_object') diff --git a/files/fr/web/javascript/reference/errors/dead_object/index.md b/files/fr/web/javascript/reference/errors/dead_object/index.md index ba4498fd26..0f65953ae7 100644 --- a/files/fr/web/javascript/reference/errors/dead_object/index.md +++ b/files/fr/web/javascript/reference/errors/dead_object/index.md @@ -8,43 +8,44 @@ tags: translation_of: Web/JavaScript/Reference/Errors/Dead_object original_slug: Web/JavaScript/Reference/Erreurs/Dead_object --- -
{{JSSidebar("Errors")}}
+{{JSSidebar("Errors")}} -

Message

+## Message -
TypeError: can't access dead object
-
+ TypeError: can't access dead object -

Type d'erreur

+## Type d'erreur -

{{jsxref("TypeError")}}

+{{jsxref("TypeError")}} -

Quel est le problème ?

+## Quel est le problème ? -

Afin d'améliorer l'utilisation de la mémoire et de prévenir les fuites mémoire, Firefox empêche les modules complémentaires de conserver des références fortes vers les objets du DOM après que leur document parent a été détruit. Un objet mort (dead) est un objet qui contient une référence forte vers un éléments du DOM, même après que celui-ci a été détruit dans le DOM. Pour éviter ces problèmes, les références aux objets du DOM d'un document étranger devraient être enregistrées dans un objet spécifique à ce document et être nettoyées lors de la suppression du document. On peut également utiliser les objets qui permettent d'enregistrer des références faibles.

+Afin d'améliorer l'utilisation de la mémoire et de prévenir les fuites mémoire, Firefox empêche les modules complémentaires de conserver des références fortes vers les objets du DOM après que leur document parent a été détruit. Un objet mort (_dead_) est un objet qui contient une référence forte vers un éléments du DOM, même après que celui-ci a été détruit dans le DOM. Pour éviter ces problèmes, les références aux objets du DOM d'un document étranger devraient être enregistrées dans un objet spécifique à ce document et être nettoyées lors de la suppression du document. On peut également utiliser les objets qui permettent d'enregistrer [des références faibles](/fr/docs/Mozilla/Tech/XPCOM/Language_Bindings/Components.utils.getWeakReference). -

Vérifier si un objet est mort

+## Vérifier si un objet est mort -

Components.utils fournit une méthode isDeadWrapper() qui peut être utilisée par du code privilégié :

+[`Components.utils`](/fr/docs/Components.utils) fournit une méthode `isDeadWrapper()` qui peut être utilisée par du code privilégié : -
if (Components.utils.isDeadWrapper(window)) {
+```js
+if (Components.utils.isDeadWrapper(window)) {
   // dead
-}
+} +``` -

Du code sans privilège ne pourra pas accéder à Component.utils et pourra simplement intercepter l'exception :

+Du code sans privilège ne pourra pas accéder à `Component.utils` et pourra simplement intercepter l'exception : -
try {
+```js
+try {
   String(window);
 }
 catch (e) {
   console.log("window est problablement mort ");
-}
+} +``` -

Voir aussi

+## Voir aussi - +- [Que signifie “can’t access dead object” ? (en anglais)](https://blog.mozilla.org/addons/2012/09/12/what-does-cant-access-dead-object-mean/) +- [Les causes principales des fuites mémoire dans les extensions](/fr/docs/Extensions/Common_causes_of_memory_leaks_in_extensions) +- [`Components.utils`](/fr/docs/Components.utils) +- [Compartiments zombies](/en-US/docs/Mozilla/Zombie_compartments#Zombie_compartments) -- cgit v1.2.3-54-g00ecf