Javascript 对象没有方法';加入';

Javascript 对象没有方法';加入';,javascript,jquery,json,Javascript,Jquery,Json,我从服务器接收到以下格式的JSON对象: [ { "Id": 1, "defNo": "ME-2-17", "ReportDate": "2013-10-04T00:00:00", "Remarks": "" } ] 为了在循环中使用它,我试图通过$.parseJSON(responseText在数组中转换它,但转换后我仍然无法将其用作控制台,控制台显示: Uncaught TypeError: Object #<Object> has no method 'join' unca

我从服务器接收到以下格式的
JSON
对象:

[ { "Id": 1, "defNo": "ME-2-17", "ReportDate": "2013-10-04T00:00:00", "Remarks": "" } ]
为了在循环中使用它,我试图通过
$.parseJSON(responseText
在数组中转换它,但转换后我仍然无法将其用作控制台,控制台显示:

Uncaught TypeError: Object #<Object> has no method 'join'
uncaughttypeerror:对象#没有方法“join”
完整功能:

function exportToCsv() {
var formInfo = $("#requestSortForm").serialize();
$.post('../../REQUEST/GetSortedRequest', formInfo, function (responseText) {

    data = $.parseJSON(responseText);
    console.log($.parse(responseText));

    var csvContent = "data:text/csv;charset=utf-8,";
    data.forEach(function (infoArray, index) {

        dataString = infoArray.join(",");
        csvContent += index < infoArray.length ? dataString + "\n" : dataString;

    });
    var encodedUri = encodeURI(csvContent);
    window.open(encodedUri);
});
}
函数exportToCsv(){
var formInfo=$(“#requestSortForm”).serialize();
$.post('../../REQUEST/GetSortedRequest',formInfo,函数(responseText){
数据=$.parseJSON(responseText);
log($.parse(responseText));
var csvContent=“数据:文本/csv;字符集=utf-8,”;
forEach(函数(infoArray,index){
dataString=infoArray.join(“,”);
csvContent+=索引

我在下面的例子中给出了
的答案,因此,如果您同意将对象类型更新一点,您可以使用本机的
JSON.parse()
对象类型:

var infoArray = [];
var data = JSON.parse(responseText, function(k, v) {
        if (k === "") return v;  infoArray.push(v); return v;
    });

现在,您可以将JSON中的值作为数组进行交互,并且仍然可以将
数据
作为对象使用。

显然
infoArray
是一个对象,而该对象没有连接方法。错误消息非常清楚地说明了这一点。因为它不是数组……如何将该对象转换为数组?我已经包含了我下面的例子是为了让自己清楚地了解lil。请查看编辑后的答案。