首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >解析和删除json对象的引号。

解析和删除json对象的引号。
EN

Stack Overflow用户
提问于 2013-12-09 21:09:52
回答 1查看 423关注 0票数 0

我的数据

代码语言:javascript
复制
var data = [
{"title":"2013-12-09", "calls_in":"345", "calls_out":"100"},
{"title":"2013-12-08", "calls_in":"125", "calls_out":"97"}, 
{"title":"2013-12-07", "calls_in":"85", "calls_out":"2"},
{"title":"2013-12-06", "calls_in":"185", "calls_out":"22"},
{"title":"2013-12-05", "calls_in":"74", "calls_out":"419"}
]

从json格式的PHP脚本到达,如上面所示。我使用的是一个API,即'jChartFX',它基本上是一个javascript图形库,它使用javascript/jquery动态生成很酷的图表。

目前,使用上述库的数据无法解析它。由于整数值周围的引号,它失败了。我需要数据的格式:

代码语言:javascript
复制
var data = [
        {"title":"2013-12-09", "calls_in":345, "calls_out":100},
        {"title":"2013-12-08", "calls_in":125, "calls_out":97}, 
        {"title":"2013-12-07", "calls_in":85, "calls_out":2},
        {"title":"2013-12-06", "calls_in":185, "calls_out":22},
        {"title":"2013-12-05", "calls_in":74, "calls_out":419}
    ]

你看,整数不是用引号包装的。如何使用jQuery或javascript完成此操作。

在它最基本的形式(工作)中,完整的脚本看起来类似于:

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head>
 <link rel="stylesheet" type="text/css" href="chartfx.css" />
 <script type="text/javascript" src="js/jchartfx.system.js"></script>
 <script type="text/javascript" src="js/jchartfx.coreBasic.js"></script>  
</head>
<body onload="loadChart()">
<div id="ChartDiv" style="width:600px;height:400px"></div>
<script>

var chart1;

function loadChart(){        

    chart1 = new cfx.Chart();
    chart1.getData().setSeries(2);
    chart1.getAxisY().setMin(0);
    chart1.getAxisY().setMax(700);

    var series1 = chart1.getSeries().getItem(0);
    var series2 = chart1.getSeries().getItem(1);

    series1.setGallery(cfx.Gallery.Lines);
    series2.setGallery(cfx.Gallery.Lines);

    var data = [
        {"title":"2013-12-09", "calls_in":345, "calls_out":100},
        {"title":"2013-12-08", "calls_in":125, "calls_out":97}, 
        {"title":"2013-12-07", "calls_in":85, "calls_out":2},
        {"title":"2013-12-06", "calls_in":185, "calls_out":22},
        {"title":"2013-12-05", "calls_in":74, "calls_out":419}
    ]

    console.log(data);
        chart1.setDataSource(data);
        var divHolder = document.getElementById('ChartDiv');
    chart1.create(divHolder);            

  }

</script>

</body>
</html>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-09 21:17:20

选项1:在将数据传递给parseInt()之前,只需在每个整数值上调用JavaScript中的jChartFX。

选项2:如果您可以修改PHP,那么将您的JSON编码如下:json_encode($arrayContainingTheData, JSON_NUMERIC_CHECK );

备选案文2的例子:

代码语言:javascript
复制
$x = array( 'foo' => "1", 'bar' => "2");
echo json_encode($x, JSON_NUMERIC_CHECK  );

结果:{"foo":1,"bar":2}

更多信息:

  • encode --解释json_encode()
  • http://www.php.net/manual/en/json.constants.php --解释JSON_NUMERIC_CHECK常数
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20480848

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档