我尝试分配一个对象以使用 jQuery 进行进一步处理,但它不起作用。 这是我的代码:
$('.var').on('click', function () {
console.log($(this));
sessionStorage.setItem('object', JSON.stringify($(this)));
console.log(JSON.parse(sessionStorage.getItem('object')));
}
两个控制台日志的值不同。为什么?
第二个例子:
$('.var').on('click', function () {
sessionStorage.setItem('object', JSON.stringify($(this)));
var item = JSON.parse(sessionStorage.getItem('object'));
item.addClass('not-work'); //does not work
$(this).addClass('work'); //works
e.preventDefault();
}
我在 sessionStorage() 上做错了什么。
最佳答案
JSON.stringify 从字符串化对象中删除方法,因为有效的 JSON 不包含函数。
示例:
var obj = {
prop: 5,
method: function() {}
};
JSON.stringify(obj);
结果:"{"prop":5}"
关于javascript - 无法使用 sessionStorage 分配对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32101859/