Skip to content

Commit 5660d8c

Browse files
committed
docs: tra section
1 parent 1ea0638 commit 5660d8c

File tree

1 file changed

+22
-1
lines changed

1 file changed

+22
-1
lines changed

6-data-storage/01-cookie/article-fr.md

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -277,4 +277,25 @@ Mais si un cookie est `httpOnly`, alors `document.cookie` ne le voit pas, donc i
277277

278278
Ici un petit lot de fonctions qui fonctionnent avec les cookies, plus pratiques que des modifications manuelles de `document.cookie`.
279279

280-
Il existe beaucoup de librairies de cookie pour ça, celles là sont à but démonstratifs. Elles fonctionnent complétement cependant.
280+
Il existe beaucoup de librairies de cookie pour ça, celles là sont à but démonstratifs. Elles fonctionnent complétement cependant.
281+
282+
### getCookie(name)
283+
284+
Le moyen le plus court d'accéder à un cookie est d'utiliser une [expression régulière](info:regular-expressions).
285+
286+
La fonction `getCookie(name)` retourne un cookie avec le nom donné :
287+
288+
```js
289+
// Retourne le cookie correspondant au nom donné,
290+
// ou undefined si non trouvé
291+
function getCookie(name) {
292+
let matches = document.cookie.match(new RegExp(
293+
"(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"
294+
));
295+
return matches ? decodeURIComponent(matches[1]) : undefined;
296+
}
297+
```
298+
299+
Ici `new RegExp` est généré dynamiquement, pour faire correspondre `; name=<value>`.
300+
301+
Veuillez noter qu'un cookie à une valeur encodée, donc `getCookie` utilise une fonction `decodeURIComponent` intégrée pour la décoder.

0 commit comments

Comments
 (0)