aboutsummaryrefslogtreecommitdiff
path: root/files/fr/web/javascript/reference/global_objects/finalizationregistry/register/index.md
blob: b9be96d21b494fd24ec17b21da8228b2329a3bd8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
---
title: FinalizationRegistry.prototype.register()
slug: Web/JavaScript/Reference/Global_Objects/FinalizationRegistry/register
translation_of: Web/JavaScript/Reference/Global_Objects/FinalizationRegistry/register
browser-compat: javascript.builtins.FinalizationRegistry.register
---
{{JSRef}}

La méthode `register()` inscrit un objet dans un registre [`FinalizationRegistry`](/fr/docs/Web/JavaScript/Reference/Global_Objects/FinalizationRegistry) afin que, lorsque l'objet est traité par le ramasse-miettes, la fonction de rappel de nettoyage associée puisse être appelée.

## Syntaxe

```js
register(cible, valeurTenue);
register(cible, valeurTenue, jetonDesenregistrement);
```

### Paramètres

- `cible`
  - : L'objet cible à inscrire au registre.
- `valeurTenue`
  - : La valeur à passer au finaliseur pour cet objet. Cette valeur ne peut pas être l'objet `cible`.
- `jetonDesenregistrement` {{optional_inline}}
  - : Un jeton qui peut être utilisé par la méthode `unregister()` plus tard pour retirer l'objet cible du registre. Si cette valeur est fournie (et est différente de `undefined`), ce doit être un objet. Si cette valeur n'est pas fournie, l'objet cible ne peut pas être retiré du registre.

### Valeur de retour

`undefined`.

## Notes

Voir les notes de la page [`FinalizationRegistry`](/fr/docs/Web/JavaScript/Reference/Global_Objects/FinalizationRegistry#avoid_where_possible) à propos d'inconvénients sur l'utilisation de ces outils.

## Exemples

### Utiliser register()

La ligne suivante enregistre l'objet `cible` et passe la valeur tenue `"une valeur"` et l'objet cible comme jeton de désenregistrement :

```js
registry.register(cible, "une valeur", cible);
```

La ligne suivante enregistre l'objet `cible` et passe un autre objet comme valeur tenue. L'absence de jeton de désenregistrement indique que `cible` ne peut pas être retiré du registre) :

```js
registry.register(cible, {"utile": "info à propos de la cible"});
```

## Spécifications

{{Specifications}}

## Compatibilité des navigateurs

{{Compat}}

## Voir aussi

- [`FinalizationRegistry`](/fr/docs/Web/JavaScript/Reference/Global_Objects/FinalizationRegistry)