不建议使用eval()函数,因为eval()接受任意的
字符串,并当作JavaScript代码来处理,这个机制已经有安全隐患了var str='{ "name": "John" }'var obj = eval ('(' + str + ')')alert(obj.name) $.parseJSON()和JSON.parse()函数用于将格式完好的JSON字符串转为与之对应的JavaScript
对象。所谓"格式完好",就是要求指定的字符串必须符合严格的JSON格式,例如:属性名称必须加双引号、字符串值也必须用双引号。其次,JSON标准不允许字符串中出现"控制字符",正确写法应该是使用两个反斜杠,以免被JS解析器直接转义。 1、JSON字符串转换为JSON对象var str='{ "name": "John" ,"age": "24" }'var obj = $.parseJSON(str)alert(obj.name) //John var str = '{ "name": "John", "age": "24" }'var obj = JSON.parse(str)alert(obj.name) //John 2、将JSON对象转换为字符串var obj={name: "John", age: "24"}var last=JSON.stringify(obj)alert(last) //'{name: "John", age: "24"}' var obj={name: "John", age: "24"}var last=obj.toJSONString()alert(last) //'{name: "John", age: "24"}' 3、解析读取json对象var str={ "result":{"age":"33","id":"2server","name":"mady" }}alert(str.result.age) //33 var result = $.parseJSON( '[ 1, true, "CodePlayer" ]' )alert( result[1] ) // CodePlayer var result = $.parseJSON( "\"专注于编程开发技术分享\"" )alert(result) //专注于编程开发技术分享
1. 表单请求方式
请求URL: http://xxx.xxx.com/form?type=1
方法form()接收到请求参数为Type[code="1", desc="类型1"]枚举对象
响应数据:{"testId": 1,"testName": "test1","type": {"code": "1","desc": "类型1"}}
2.JSON请求方式
请求URL: http://xxx.xxx.com/json
请求参数:{"type":"TYPE_1"}
方法json()接收到请求参数为Type[code="1", desc="类型1"]枚举对象
响应数据:{"testId": 1,"testName": "test1","type": {"code": "1","desc": "类型1"}}
注意:这种比较特殊,没有特殊配置,参数值需要是枚举名称,如果参数值是1,会根据枚举类的ordinal属性来关联,原因应该是解析json用的是jackson,用不到spring的Formatter和Converter之类的机制。
有解决方案的朋友欢迎留言~~ (❤ ω ❤)
1、先定义一个json变量。
2、然后定义这个变量的值,其实一个json对象就是一个obj对象。
3、要添加json对象的元素,直接使用数组下标方式,添加键和值就行了。
4、要为json对象添加对象,我们可以先创建一个对象。
5、然后也是使用数组下标方式,为其赋值为新的对象变量就行了。
6、在浏览器里,我们就可以看到这个json对象了,而且新加的元素和对象都已经在里面了。
评论列表(0条)