我有以JSON格式存储的cookie信息,如下所示:
var preferredAnimal = {
"dog" : "true",
"cat" : "false",
"bird" : "true"
};
我如何提取一个项目的信息?例如,我只想检查cookie,如果bird返回true,就做点什么。
在devtools中检查cookie时,Name是preferredAnimal,值是{"dog":true,"cat":false,"bird":true},所以尝试识别该值会给我带来一切。
感谢的任何帮助
您可以执行以下操作:
if(preferredAnimal.bird == 'true')
{
//do something
}
假设您使用JSON.stringify
字符串化cookie,您可以使用以下函数获得其原始形式:
function getCookieAsJSON(name) {
const value = `; ${document.cookie}`;
const parts = value.split(`; ${name}=`);
if (parts.length === 2)
return JSON.parse(
parts.pop()
.split(';')
.shift()
);
}
用法:
const cookie = getCookieAsJSONI('preferredAnimal') // preferredAnimal is the name of your cookie
console.log(cookie) // Returned cookie is an object just as your orignal object if you used JSON.stringify
输出:
{
dog: "true",
cat: "false",
bird:"true"
}
注意,您的值将是字符串,但您可以很容易地将它们转换为正确的类型。