Skip to content

Commit 12adf74

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

File tree

1 file changed

+35
-1
lines changed

1 file changed

+35
-1
lines changed

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

Lines changed: 35 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -298,4 +298,38 @@ function getCookie(name) {
298298

299299
Ici `new RegExp` est généré dynamiquement, pour faire correspondre `; name=<value>`.
300300

301-
Veuillez noter qu'un cookie à une valeur encodée, donc `getCookie` utilise une fonction `decodeURIComponent` intégrée pour la décoder.
301+
Veuillez noter qu'un cookie à une valeur encodée, donc `getCookie` utilise une fonction `decodeURIComponent` intégrée pour la décoder.
302+
303+
### setCookie(name, value, options)
304+
305+
Définit le cookie `name` à la valeur `valeur` avec `path=/` par défaut (peut être modifié pour ajouter d'autres valeurs par défaut) :
306+
307+
```js run
308+
function setCookie(name, value, options = {}) {
309+
310+
options = {
311+
path: '/',
312+
// Ajoute d'autres valeurs par défaut si nécessaire
313+
...options
314+
};
315+
316+
if (options.expires instanceof Date) {
317+
options.expires = options.expires.toUTCString();
318+
}
319+
320+
let updatedCookie = encodeURIComponent(name) + "=" + encodeURIComponent(value);
321+
322+
for (let optionKey in options) {
323+
updatedCookie += "; " + optionKey;
324+
let optionValue = options[optionKey];
325+
if (optionValue !== true) {
326+
updatedCookie += "=" + optionValue;
327+
}
328+
}
329+
330+
document.cookie = updatedCookie;
331+
}
332+
333+
// Exemple d'utilisation :
334+
setCookie('user', 'John', {secure: true, 'max-age': 3600});
335+
```

0 commit comments

Comments
 (0)