【问题标题】:nodejs-convert json object to string array in $.get responsenodejs-将json对象转换为$.get响应中的字符串数组
【发布时间】:2014-11-11 22:04:33
【问题描述】:

现在我正在尝试返回带有对 $.get() 请求的响应的字符串数组,因此我将字符串数组转换为 JSON 对象

var messagesFromFile = Array();
    messagesFromFile[0]="code";
    messagesFromFile[1]="eat";
    messagesFromFile[2]="play";
    messagesFromFile[3]="sleep";
    response.writeHead(200,{'Content-Type':'application/json'})
    response.write(JSON.stringify(messagesFromFile));
    response.end();

,然后在前端,我想将json对象转换回字符串数组

$(window).load(function(){
            $.get("http://localhost:8000",
                {
                    name:"GetAllMessages"
                },function(data,status){
                    try{
                        var arr = $.parseJSON(data);
                    }
                    catch(err){
                        alert(err);
                    }
                });
        });

但是会抛出“语法错误意外令牌”异常!!!克服此异常的任何帮助或以任何方式返回响应的字符串数组 提前致谢

【问题讨论】:

    标签: jquery json node.js


    【解决方案1】:

    通常 jQuery 已经为您解析了 JSON,尤其是在内容类型标头设置正确的情况下。我的猜测是您正在尝试解码已解码的对象。尝试将console.log("GET results: type: %s data: %s", typeof data, data) 放在$.parseJSON 调用之前。

    【讨论】:

    • 数据的类型是object,然后我用toString()方法然后split()方法得到字符串数组,谢谢Jessie先生的回复
    • 如果data 的类型是一个对象,它可能已经是一个数组。所以你在做Array -> JSON -> Array -> Comma Separated String -> Array。您可以删除最后两个步骤。我 98% 确定它已经是您要查找的数组。
    猜你喜欢
    • 2022-11-19
    • 1970-01-01
    • 2011-08-19
    • 2017-01-17
    • 2013-08-29
    • 1970-01-01
    • 2017-11-11
    • 1970-01-01
    • 2012-05-08
    相关资源
    最近更新 更多