javascript/jQuery在cookie中存储对象并检索
javascript/jQuery storing object in cookie and retrieve
我看过很多和我类似的问题,但没有完全回答我的问题。
我的问题是,我需要存储一个对象的整个实例,这意味着除了他的字段,我还需要它的相关方法。
我代码:存储对象:
$.cookie(key, JSON.stringify(value), { expires: expire });
检索对象:
var value = $.cookie(key);
if (value === null || value === undefined) {
return value = "";
}
return JSON.parse(value);
我从cookie中获得的对象有它们的字段,但是对象没有我在存储之前附加的方法。
只是让你的家伙/女士们可以理解什么对象我试图工作,我提供了以下提琴:https://jsfiddle.net/5hhgtnxh/
如果没有一些hack,你根本无法将方法或函数保存到cookie或本地存储,JSON.stringify
将省略键,函数只保留数据。这对于保存方法是必要的吗?它们已经在代码里了。您可以根据数据和方法拆分对象,只将数据保存到cookie/localstorage。
非常简单的例子:
var CustomObject = function (data) {
var data = data;
this.getX = function () {
return data.x;
};
this.setX = function (x) {
data.x = x;
};
this.getData = function () {
return data;
};
};
var o = new CustomObject({});
o.setX(42);
$.cookie('myObj', JSON.stringify(o.getData()));
//later, let's initialize obj from cookie
var custData = $.cookie('myObj');
var o2 = new CustomObject(custData);
相关文章:
- 访问存储对象
- 在 Jquery 中,我可以存储对象引用并在以后使用它吗?
- 在JSON中存储对象引用
- 在外部JSON文件中存储对象数组
- 如何使用 json.stringify 在 cookie 中正确存储对象数组
- 将数据追加到本地存储对象
- 在 Javascript 中存储对象的当前状态的最佳实践是什么?
- 在 chrome.storage 中正确存储对象
- 存储对象事件的内容
- 本地存储对象数组:仅将新对象推送到数组中(如果唯一)
- jQuery选择器存储对象?如何强迫它不这样做
- 如何在 html5 的本地存储对象中存储数组
- 基于另一个对象键/值存储对象值
- JavaScript:如何在数组中存储对象
- 用于在javascript中存储对象的类型化数组
- 我可以将javascript存储在本地存储对象中并运行它吗
- 如何在HTML元素中存储对象引用
- 如何使用jQuery$.cokie()在cookie中存储对象数组
- 如何在JavaScript中访问和存储对象数组
- 是否有一个好的方法来存储对象的引用