762 B
762 B
title, tags
| title | tags |
|---|---|
| parseCookie | browser,string,intermediate |
Parses an HTTP Cookie header string, returning an object of all cookie name-value pairs.
- Use
String.prototype.split(';')to separate key-value pairs from each other. - Use
Array.prototype.map()andString.prototype.split('=')to separate keys from values in each pair. - Use
Array.prototype.reduce()anddecodeURIComponent()to create an object with all key-value pairs.
const parseCookie = str =>
str
.split(';')
.map(v => v.split('='))
.reduce((acc, v) => {
acc[decodeURIComponent(v[0].trim())] = decodeURIComponent(v[1].trim());
return acc;
}, {});
parseCookie('foo=bar; equation=E%3Dmc%5E2');
// { foo: 'bar', equation: 'E=mc^2' }