上节说道:只见那周瑜拿着大刀,骑着大马,飞奔而来。然后子龙一个回马枪打的那周瑜是落荒而逃~~咳咳皇帝的新装续写300字……
不好意思,跑题了,回到正题。
上节讲解了js中处理json的一个很重要的方法:
json.stringify() ,没有读的小伙伴先去看一下文章:
你真会用js中的json(二)?
这节继续来讲另一个同样重要的方法,怎么样把一个json字符串转成json中的对象,有转就有解嘛~~
该方法的作用是把json字符串转成javascript中对象:
var json = '{"name": "张三", "age": 10, "address": "北京"}'var obj = json.par(json)console.log(obj.name) // '张三'console.log(obj.age) // 10console.log(obj.address) // '北京'// 用法还是挺简单的。但是如果我不小心手残了,// 把json字符串写错了,比如:键忘记写双引号了,看看会有什么效果var errorjson = '{name: "张三", "age": 10, "address": "北京"}'var obj1 = json.par(errorjson)// uncaught syntaxerror: unexpected token n in json at position 1// 是的,报错啦~~~// 这说明,如果我们传入的json字符串是一个错误的格式,那么该方法会报错
通常,我们会用try…catch语句来捕获一下这个错误,
var errorjson = '{name: "张三", "age": 10, "add我们是第几人称ress": "北京"}'try{ json.par(errorjson)}catch(e){ // 捕获错误,对错误对行处理 console.log(e)}
par()方法还可以接收另一个可选参数,该参数和stringify()方法的第二个参数差不多,类型为函数类型的。
var json = '{"name": "张三", "age": 10, "address": "北京"}'var handlefunction = function (key, value) { if (key === 'age') { return value + 10 } return value}var obj = json.par(json, handlefunction)console.log(obj) // name: "张三", age: 20, address: "北京"}// 上面代码我们判断如果键是`age`的话,就让值加10,最终得到结果是:20// 和 stringify()函数用法基本一样。
先说用法:如果某个对象中定义了tojson方法,那么在把个对象转成json字符串的时候,就会调用这个方法,而忽略对象的其它属性。
// 先来看一个没有tojson方法的对象var person = { name: '张三', age: 10, address: '北京'}var json = json.stringify(person)console.log(json) // {"name":"张三","age":10,"address":"北京"}
卢森堡面积// 再看一下如果给这个对象加上tojson方法var person = { name: '张三', age: 10, address: '北京', tojson: function(){ return '我是tojson方法的返回值' }}var json = json.stringify(person)console.log(json) // "社会治安综合治理委员会我是tojson方法的返回值"// 可以发现,如果定义了tojson方法,stringify()就会调用对象的tojson方法,// 并且把返回值做为要转成json的对象// 再来看一个例子var person = { name: '张三', age: 10和平鸽的简笔画, address: '北京', tojson: function(){ return { name: '李四', age: 20, address: '上海' } }}var json = json.stringify(person)console.log(json) //{"name":"李四","age":20,"address":"上海"}// 可以发现,要转json的对象已经和原来不一样了。
好了,js中的json知识点就介绍这么多。
本文发布于:2023-04-05 14:11:02,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/f2826a5b235737e73c8e00133ec4b3b2.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:json转js对象的方法(0基础小白深入掌握Json).doc
本文 PDF 下载地址:json转js对象的方法(0基础小白深入掌握Json).pdf
留言与评论(共有 0 条评论) |