我正在尝试将一个 javascript 对象放入 Cookies 中,但不知何故它被转换为 String 对象。有什么方法可以在 JavaScript cookie 中设置对象?
问问题
2729 次
4 回答
5
您可以使用JSON.stringify()
将对象转换为 JSON 字符串并存储它。然后,当您阅读它们时,将字符串转换为 Object 使用JSON.parse()
此外,最好使用LocalStorage而不是 cookie 来存储更大的数据。两者都存储字符串,但 cookie 只有 4kb,而 LocalStorage 大约为 5-10MB。
于 2012-04-12T07:17:49.273 回答
4
您可以在保存到 cookie 之前将 Object 转换为 JSON,并在从 cookie 获取之后从 JSON 转换为 Object。
于 2012-04-12T07:16:51.440 回答
1
此函数会将对象转换为字符串,使用它来对对象进行字符串化,然后添加到 cookie。
function JSONToString(Obj){
var outStr ='';
for (var prop in Obj) {
outStr = '{';
if (Obj.hasOwnProperty(prop)) {
if(typeof Obj[prop] == 'object'){
outStr += JSONToString(Obj[prop]);
} else {
outStr += prop + ':' + Obj[prop].toString();
}
}
outStr += '}';
}
return outStr;
}
于 2012-04-12T07:36:47.013 回答
0
使用 JSON - JavaScript 对象表示法。这是一个很好的使用 JSON 的教程。
长话短说:它是将任何对象转换为特殊格式的文本字符串并返回的标准。因此,您将在 cookie 中存储一个 JSON 字符串。
于 2012-04-12T07:15:56.417 回答