发布网友 发布时间:2022-04-24 18:53
共2个回答
懂视网 时间:2022-04-07 13:12
如何在sessionstorage中存储JSON数据
在web开发时,可能经常会用到sessionstorage存储数据,存储单个字符串数据变量时并不困难
var str = 'This is a string'; sessionstorage.setItem('param',str);
获取sessionstorage
var item = sessionstorage.getItem('param'); console.log(item);
但是sessionStorage只能存储字符串类型数据,无法直接存储数组类型和JSON对象,如果有需求该怎样做呢?其实也很简单。
首先将JSON对象通过JSON.stringify()方法转换成字符串,再存储到sessionstorage中
var obj = {"name": "Tom","age": 12,"gender": "man"}; sessionstorage.setItem('jsonParams',JSON.stringify(obj));
然后通过JSON.parse()方法将字符串转换成JSON格式即可
var data = JSON.parse(sessionstorage.getItem('jsonParams')); console.log(data);
本文来自 js教程 栏目,欢迎学习!
热心网友 时间:2022-04-07 10:20
使用 json 存储结构化数据就是从文件中读写字符串很容易。
1.数值就要多费点儿周折,因为 read() 方法只会返回字符串,应将其传入 int() 这样的函数,就可以将 '123' 这样的字符串转换为对应的数值 123。当你想要保存更为复杂的数据类型,例如嵌套的列表和字典,手工解析和序列化它们将变得更复杂。
好在用户不是非得自己编写和调试保存复杂数据类型的代码,Python 允许你使用常用的数据交换格式 JSON(JavaScript Object Notation)。标准模块 json 可以接受 Python 数据结构,并将它们转换为字符串表示形式;此过程称为 序列化。从字符串表示形式重新构建数据结构称为 反序列化。序列化和反序列化的过程中,表示该对象的字符串可以存储在文件或数据中,也可以通过网络连接传送给远程的机器。
Note
2.JSON 格式经常用于现代应用程序中进行数据交换。许多程序员都已经熟悉它了,使它成为相互协作的一个不错的选择。
如果你有一个对象 x,你可以用简单的一行代码查看其 JSON 字符串表示形式:
>>> json.mps([1, 'simple', 'list'])
'[1, "simple", "list"]'
mps() 函数的另外一个变体 mp(),直接将对象序列化到一个文件。所以如果 f 是为写入而打开的一个 文件对象,我们可以这样做:
json.mp(x, f)
为了重新解码对象,如果 f 是为读取而打开的 文件对象:
x = json.load(f)
3.这种简单的序列化技术可以处理列表和字典,但序列化任意类实例为 JSON 需要一点额外的努力。 json 模块的手册对此有详细的解释。
See also
pickle - pickle 模块
4.与 JSON 不同,pickle 是一个协议,它允许任意复杂的 Python 对象的序列化。因此,它只能用于 Python 而不能用来与其他语言编写的应用程序进行通信。默认情况下它也是不安全的:如果数据由熟练的攻击者精心设计, 反序列化来自一个不受信任源的 pickle 数据可以执行任意代码。