繁体   English   中英

将JSON转换为JavaScript数组

[英]Convert JSON into JavaScript array

我从服务器得到响应:

{'data':['29/10/2009','13/04/2009','19/10/2009','07/04/2009','20/05/2009','27/02/2010',
'20/04/2009','16/06/2009','15/12/2009','22/06/2009','21/09/2009','28/07/2009',
'19/01/2009','14/05/2010','30/03/2009','06/04/2009','21/01/2010','10/03/2009',
'17/09/2009','09/04/2009','27/10/2009'.....]}

我想获取此日期数组并将其放入JS数组:

                success: function(response){    
                intObj = response.responseText;
                for(var i in intObj) {
                    console.log(i);
                    if(intObj.hasOwnProperty(i) /*&& !isNaN(+i)*/) {

                        dateArray[+i] = intObj[i];
                    }
                }
            }

但是在我的数组中获取结果:

["\r", "\n", "\r", "\n", "\r", "\n", "\r", "\n", "\r", "\n", "\r", "\n", "\r", "\n",
"\r", "\n", "\r", "\n", "\r", "\n", "{", "'", "d", "a", "t", "a", "'", ":", "[", "'", 
"2", "9", "/", "1", "0", "/", "2", "0", "0", "9", "'", ",", "'", "1", "3", "/", "0", 
"4", "/", "2", "0", "0", "9", "'", ",", "'", "1", "9", "/", "1", "0", "/", "2", "0", 
"0", "9", "'", ",", "'", "0", "7", "/", "0", "4", "/", "2", "0", "0", "9"...]

如何将仅日期放入数组? 像这样的'29/10/2009','13/04/2009','19/10/2009','07/04/2009']

您需要将字符串解析为JSON:

var result = JSON.parse(response.responseText);

然后,您可以直接获取数组:

var array = result.data;

您必须使用JSON.parse() 我相信您需要使用responseText属性,该属性以字符串形式返回响应。

var jsonObject = JSON.parse(response.responseText);
var dataArray = jsonObject.data;

回应是一个对象

var array = response.data;

响应是一个字符串

将其转换为对象:

var response = JSON.parse(response);

您必须解析结果。

var arrayOfDates = JSON.parse(response.responseText).data;

尝试使用

var intObj = eval("(" + response + ");");
for (var i in intObj.data) {
        console.log(i);
        if(intObj.hasOwnProperty(i) /*&& !isNaN(+i)*/) {
             dateArray[+i] = intObj[i];
        }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM