将string转换为JSON对象
你怎么让JS认为一个string是JSON?
我有一个函数,只有JSON对象传递给它。 如果我传递一个string,与JSON格式相同,它不起作用。 所以我想让这个函数认为传递给它的string是一个JSON。 该string确实是JSON格式。
我也尝试了以下。 我通过Ajaxinputstring,“handle as”参数为“JSON”,然后当我将结果传递给它的函数。
所以我推断这个问题不在string中。 如何将此string转换为JSON? 如果我通过ajax请求获得相同的string,然后将其传递给函数工作,而直接传递它不起作用。
string如下:
{ "data": [ { "id": "id1", "fields": [ { "id": "name1", "label": "joker", "unit": "year" }, {"id": "name2", "label": "Quantity"}, ], "rows": [ data here.... and closing braces..
var obj = JSON.parse(string);
其中string
是你的JSONstring。
你可以使用JSON.parse()
。
请参阅MDN上的文档
例:
var myObj = JSON.parse('{"p": 5}'); console.log(myObj);
var obj = jQuery.parseJSON('{"name":"John"}'); alert( obj.name === "John" );
链接:-
我的问题和你的类似的string一样
{id:1,field1:"someField"},{id:2,field1:"someOtherField"}
问题她是string的结构jsonparsing器没有认识到它需要在这种情况下创build2个对象。 所以我所做的是有点傻,我只是重新构造我的string,并添加了这个parsing器识别的[]
var myString = {id:1,field1:"someField"},{id:2,field1:"someOtherField"} myString = '[' + myString +']' var json = $.parseJSON(myString)
希望它有帮助,
如果有人有一个更优雅的方法,请分享。
var Data=[{"id": "name2", "label": "Quantity"}]
将stringvariables传递给Jsonparsing:
Objdata= Json.parse(Data);
JSON.parse()
函数会做。
要么
使用jquery,
var obj = jQuery.parseJSON( '{ "name": "Vinod" }' ); alert( obj.name === "Vinod" );
只需使用eval
函数。
var myJson = eval(theJsibStr);
- 如何从jQuery.ajax获取响应状态代码?
- 在jQuery中检测redirect$ .ajax?
- 在例如p:dataTable分页期间如何减lessp:ajax的请求负载
- 什么是最简洁的方式来获得JQuery AJAX请求的进展?
- 获取请求不通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头
- 滚动到div的底部?
- jQuery $ .ajax(),$ .post在Firefox中发送“OPTIONS”作为REQUEST_METHOD
- Google Chrome – 针对Chrome Beta 8停用了文件访问权限function
- jQuery AJAX提交表单