【问题标题】:AJAX response is interpreted as stringAJAX 响应被解释为字符串
【发布时间】:2015-12-13 11:59:54
【问题描述】:

在我的代码中,我有一个 AJAX 调用,它返回如下字符串:

['De Noordzeemoorden 3 Ritueel',-15,3190,'Pearson',47850,],
['The Galactic Mage (The Galactic Mage...',-15,254,'Pearson',3810,],
['How to Develop your ESP (English Edit...',-15,1839,'Thomson',27585,],
['Wat ons niet zal doden (Millennium Bo...',-13,2732,'Kluwer',35516,],
['All Dressed in White: An Under Suspic...',-11,527,'Kluwer',5797,],
['Wormhole (The Rho Agenda Book 3) (Eng...',-11,2535,'Kluwer',27885,],
['Separation of Power (A Mitch Rapp Novel)',-10,1726,'Pearson',17260,],
['A Banquet of Consequences: A Lynley N...',-9,3695,'Thomson',33255,],
['De Navigator',-9,2126,'Kluwer',19134,]

我想用这个响应来绘制图表。我在绘制图形的函数中使用此响应。问题是,结果被解释为字符串,这会导致错误。

例如,当我复制粘贴上面的字符串并将其放入绘制图形的函数中时,它就像一个魅力。

有什么想法吗?

【问题讨论】:

  • 如果 typeof responseobject 然后使用 JSON.parse 解析它并在图中使用该数据..
  • 那不是字符串。它看起来像一些嵌套数组(没有看到外部数组外壳)。这可以解释为什么当您将数据粘贴到函数中时它会起作用。我们需要查看更多代码以了解您如何使用它。 相关代码,如AJAX调用和函数。

标签: javascript arrays ajax string google-visualization


【解决方案1】:

尝试使用JSON.parse() 它将字符串转换为 JavaScript 对象

【讨论】:

  • JSON.parse() 方法将字符串解析为 JSON。转换:(
  • JSON.parse() 给我:SyntaxError: JSON.parse: unexpected character at line 1 column 2 of the JSON data
  • 因为数据不是 JSON。你确定你是通过 AJAX 获得的吗?
【解决方案2】:

当函数期望将不同的类型(可能是数组或对象)传递给它时,您将字符串作为参数传递。

您应该设置您的 AJAX 请求以响应字符串编码的 JSON 对象,然后使用 JSON.parse() 检索 JavaScript 对象。然后,您可以将该对象传递给您的图形函数或从该对象中提取一个数组并将该数组传递给您的图形函数。

【讨论】:

    猜你喜欢
    • 2013-10-13
    • 1970-01-01
    • 2015-11-07
    • 1970-01-01
    • 1970-01-01
    • 2016-06-11
    • 1970-01-01
    • 1970-01-01
    • 2010-09-27
    相关资源
    最近更新 更多