JSON介绍
JSON概述:
json是一种数据格式,他广泛应用于数据传输,(目前大部分的数据传输的格式都是采用
json(跨平台 不区分语言)restful接口 就是使用json数据进行传输的)
json的表示形式
数组 []
var jsonStr = '[]'
对象 {}
var jsonStr = '{}'
解析json数据
var lrcObj = {"sgc":false,"sfy":false,"qfy":false,"lrc":{"version":1,"lyric":" [00:00.000] 作词 : 交易子\n[00:01.000] 作曲 : 交易子\n[00:02.000] 编曲 : 交易子 \n[00:30.069]记忆中的海岸线没我记的那么长远\n[00:37.072]本该撕心裂肺的想念也没我想的那么热 烈\n[00:44.393]我不可能变得连告别都做不到体面\n[00:52.193]毕竟那天之前的事我也不想再经历一 遍\n[00:57.929](ok I should probably stop right there because that's the biggest lie ever and I'm the biggest joke ever. I never stopped thinking about it. I still do.)\n[00:58.552]\n[00:59.049]Does everyone\n[01:03.136]keep repeating their mistakes\n[01:06.673]Or am I the only one\n[01:10.201]trapped in such fate\n[01:12.456]\n[01:12.968]I was your\n[01:13.872]Lucky charm\n[01:17.336]Pretty babe\n[01:19.969]Upper arm tattoo designer\n[01:23.330]Only receiver of flowers you ever sent\n[01:26.730]I miss your\n[01:27.656]Killing charm\n[01:31.056]Pretty face\n[01:34.456]Reckless adventures\n[01:37.345]Where I got abandoned in the end\n[01:40.712]\n[01:42.520]All that pain and misery, is it worth it? \n[01:47.128]Sarah Lynn? Sarah Lynn?\n[01:49.978]Is it worth it? \n[01:52.521]Sarah Lynn?\n[01:54.394]\n[01:55.448]你是否也会在下午五点从昏睡惊醒 \n[02:01.857]鼻尖和后背的汗珠 眼眶里凝结的水雾\n[02:08.784]黄昏特别版孤独 看太阳落幕 \n[02:16.376]但那个太阳是我人生最后一次甘甜的痛苦\n[02:21.689]\n[02:22.584]Is life\n[02:26.136]always this hard\n[02:29.513]or is it just when\n[02:32.929]you're a kid?\n[02:35.258]\n[02:35.624]I’m gonna\n[02:36.192]Change my number\n[02:39.592]Smash my house\n[02:42.984]Deactivate all my credit cards\n[02:46.481]Disappear into the sea\n[02:49.232]You’re gonna\n[02:49.856]Take another painkiller\n[02:53.369]Open another vermouth\n[02:56.800]Smoke another cigarette\n[03:00.106]Forget everything about me\n[03:03.249]Life and death, energy and peace. If I stop today, it was still worth it. Even the terrible mistakes that I made and would have unmade if I could. The pains that have burned me and scarred my soul, it was worth it, for having been allowed to walk where I've walked, which was to hell on Earth, heaven on Earth, back again, into, under, far in, and above.\n[03:04.456]\n[03:06.008]so easily\n[03:08.401]Like it was nothing\n[03:11.864]But to me\n[03:14.065]It was everything\n"},"tlyric":{"version":0,"lyric":""},"code":200}
获取上述的歌词
var str = lrcObj.lrc.lyric var lines = str.split('\n') for(line of lines){ console.log(line.split(']')[1]) }
JSON格式的要求 里面的key必须是" "括起来的
一般数据是从后台获取 他返回给的json格式的数据是字符串(虽然对应的js可以解析json格式 但是后台如果给你的是字符串的话 那么你就需要进行序列化和反序列化)
序列化(将一个内容写入到另一个东西里面叫序列化)
var user = { username: ' jack', password:"123" } //toString方法 打印栈地址 console.log(user.toString()) //将对应的对象变成json格式的字符串 console.log(JSON.stringify(user))
序列化的核心就是将对应的对象变成json格式的字符串
JSON.stringify(对象)
反过来从一个东西里面获取另一个东西 叫反序列化
将json格式的字符串变成对象
var jsonStr = '{"username":"jack"}' console.log(JSON.parse(jsonStr).username)
localStorage(本地存储)
和cookie的区别
- cookie的大小只有4kb 对应的localstorage有5M
- cookie会随请求发送 localstorage不会随请求发送
- cookie只能存储字符串 localstorage可以存储对应的图片以及视频的二进制
- 存储的位置不一样的
- cookie是可以过期的 localstorage不能过期
共同点
- cookie和localstorage都是存储在浏览器上
- 存储的内容的形式都是以字符串形式