将精确字符串转换为Javascript数组

时间:2015-06-21 16:08:18

标签: javascript jquery arrays flot

我有一个外部API创建一个字符串,我想用Flot图表 这是API返回的内容:
[[0, 240.5],[1, 238.77],[2, 240.46],[30, 243.99]]
但是,在JQuery中使用$.get将其作为字符串返回,而我希望它作为Javascript数组完全相同。
有没有办法让我将字符串更改为完全如图所示的数组?

4 个答案:

答案 0 :(得分:1)

尝试使用$.getJSON

$.getJSON("/path/to/server")
.then(function(data) {
  console.log($.isArray(data), data);
});

$.getJSON("https://gist.githubusercontent.com/" 
          + "guest271314/23e61e522a14d45a35e1/raw/" 
          + "62775b7420f8df6b3d83244270d26495e40a1e9d/a.json")
.then(function(data) {
    console.log($.isArray(data), data)
}, function err(jqxhr, textStatus, errorThrown) {
    console.log(errorThrown);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

答案 1 :(得分:0)

查看JSON对象。

它提供了一种将JSON字符串解析为JSON对象的方法:

var parsedData = JSON.parse(getData);

从那里,我们定义的变量parsedData可以用作数组。

parsedData[0][0];

答案 2 :(得分:0)

您可以使用JSON.parse

$.get('url', function(data) {
  var parsed = JSON.parse(data);
  // now parsed will be a 2D array
});

答案 3 :(得分:-1)

解析它。

var yourvar = "[[0, 240.5],[1, 238.77],[2, 240.46],[30, 243.99]]"; // or just "data" variable in your case (using $.get)
var array = JSON.parse(yourvar);