javascript json对象转成数组
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript json对象转成数组相关的知识,希望对你有一定的参考价值。
json对象:
"data": [[1, 3.0], [2, 3.9], [3, 2.0], [4, 1.2], [5, 1.3], [6, 2.5], [7, 2.0], [8, 3.1], [9, 2.9], [10, 0.9]]
获取json对象
$(document).ready(function ()
function onDataReceived(series)
if (!alreadyFetched[series.label])
alreadyFetched[series.label] = true;
data.push( series);
;
$.ajax(
url: "1.json",
type: "GET",
dataType: "JSON",
success: onDataReceived
);
怎样让得到的数据data等同于
var data= [[1, 3.0], [2, 3.9], [3, 2.0], [4, 1.2], [5, 1.3], [6, 2.5], [7, 2.0], [8, 3.1], [9, 2.9], [10, 0.9]]
获取json文件的源代码:
var data = [];
var alreadyFetched = ;
$(document).ready(function ()
function onDataReceived(series)
if (!alreadyFetched[series.label])
alreadyFetched[series.label] = true;
data.push( series);
;
$.ajax(
url: "2.json",
type: "GET",
dataType: "json",
success: onDataReceived
);
);
我平时是这样把json转换成数组循环处理的:
var dataArray=eval(jsonStr);for(var i in dataArray)
//TODO
有什么问题你都可以追问我,没问题,望采纳,谢谢!
追问谢谢,补充了问题,帮忙再看下
追答你可以把ajax请求的数据类型修改一下啊:
dataType: "JSON",这个改成返回字符串:
dataType: "TXT",然后在需要使用的地方eval(returnData);就可以了!
追问能不能详细点?
用后面那个json对象,我需要达到的效果var data= [[1, 3.0], [2, 3.9], [3, 2.0], [4, 1.2], [5, 1.3], [6, 2.5], [7, 2.0], [8, 3.1], [9, 2.9], [10, 0.9]]
你把你的ajax代码:
$.ajax(url: "1.json",
type: "GET",
dataType: "JSON",
success: onDataReceived
);
修改为:
$.ajax(url: "1.json",
type: "GET",
dataType: "text",
success: onDataReceived
);
这样它返回的就直接是字符串了,不是json,但是字符串的格式还是json样式!
追问那需要的数组怎得到
追答试试这样:
var dataArray=eval(dataStr);for(var i in dataArray)
//TODO
追问
不行啊大哥!你能试下了贴个完整代码不?
追答关键是你这不是一时零零散散的么?你把你的弄上了我看看
追问源代码贴到了问题里
追答$.ajax(url: "2.json",
type: "GET",
dataType: "json",
success: function(result)
var dataArray=eval(result);
for(var i in dataArray)
//TODO
); 参考技术A var Data = eval(' "data": [[1, 3.0], [2, 3.9], [3, 2.0], [4, 1.2], [5, 1.3], [6, 2.5], [7, 2.0], [8, 3.1], [9, 2.9], [10, 0.9]]').data;
用C#语言将json格式数据转成json对象
出现好多问题
该怎么去处理,急!!1
把你的json字符串中的所有的 " 替换为 ""
比如我要在c#中声明一个字符串
"a":"1"
写法有两种
1
string json="\\r\\n\\"a\\":\\"1\\"\\r\\n”; //因为字符串需要用"" 来定义 所以其中的"要用\\"来转义,而换行则是 \\r\\n2
string json=@"""a"":""1""
";
//使用@ 方式定义字符串,这种方式关闭了 \\x 这种转义序列, 所以其中的" 要用另外一个"来转义 于是就变成了 ""追问
这个应该怎么去解决呢,代码和上面的一样,这样我就把json格式的数据转化为对象了吗,可以用面向对象的方式去引用它吗,例如"录取情况.全日制学生.男生"这样会出现836吗
"t" +
"r";追问
http://zhidao.baidu.com/question/442942607.html
那里怎么看着没出问题
所以如果你想定义Json结构的数据的话,最好还是用转义字符,或者把除了首尾双引号的其余双引号换为单引号
当然,还是要用加号将字符串连接起来
这个看过,只是我已经排好了json格式的数据,怎么把它序列化为对象,用C#
追答你先建一个可序列号的对象需要和你的json格式数据结构一样的。
再用这个2个方法操作 Json序列化、反序列器
由于字数限制 我在网上搜了一下你可以到这个网址参考
http://www.cnblogs.com/zhaozhan/archive/2011/01/09/1931340.html
我有将数据按json格式排版了下,可是应该怎么样去建立一个对象呢?对象一定是要用类吗?
"体育协会成员": "全国大学体育协会(NCAA)",
"体育奖学金项目": [
"项目": "棒球",
"性别": "男子",
"选区": "选区2"
]
public class InfoTypeConfig
public InfoTypeConfig()
List<属性类型> infoType = new List<属性类型>();
public List<属性类型> InfoType
set 属性类型 = value;
get return 属性类型;
[Serializable]
public class 属性类型
public 属性类型()
public InfoType(string 名称, string 值)
this.名称 = type;
this.值 = explain;
string 名称= string.Empty;
string 值 = string.Empty;
public int 名称
set 名称= value;
get return 名称;
public string 值
set 值 = value;
get return 值;
大概这样 如果还是不懂的,继续问
追问能就上面我排的那格式帮我弄下吗?还有能加你q吗?本人实习生,好多问题无处解答!万分感谢
814934226求指教
以上是关于javascript json对象转成数组的主要内容,如果未能解决你的问题,请参考以下文章