JSON 数据分配给 Javascript Var 值

JSON Data Assigning to Javascript Var Value

我正在检索 JSON 数据并将其分配到 Javascript 并显示图表(我使用 Chart.js)。

[{"name":"yasiru","col1":"300","col2":"50","col3":"100","col4":"40","col5":"120"}]

 var pieData = [
        {
          value: obj[0].col1,
          color:"#F7464A",
          highlight: "#FF5A5E",
          label: obj[0].name
        },
        {
          value: 50,
          color: "#46BFBD",
          highlight: "#5AD3D1",
          label: "Green"
        },
        {
          value: 100,
          color: "#FDB45C",
          highlight: "#FFC870",
          label: "Yellow"
        }
      ];

当我运行这个。 label : obj[0].name 正确显示 Yasiru 名称没有任何问题。但价值不是。 所以我只试了 alert(obj[0].col1); 然后它根据我的需要显示 300。我做错了什么吗?

此处 PHP 我正在使用的代码。仅供参考

 $row = mysqli_fetch_array($result);
    $response = array('name' => $row['username'],
    'col1' => $row['first'],
    'col2' => $row['second'],
    'col3' => $row['third'],
    'col4' => $row['fourth'],
    'col5' => $row['five']
);

    $responses[]=$response;

您的代码无法正常工作,因为您的值是字符串并且 Chart.js 只需要整数。请尝试以下 JSON 代码:

[{"name":"yasiru", "col1": 300, "col2": 50, "col3": 100, "col4": 40,"col5": 120}]

顺便说一下,调试时更喜欢使用控制台,而不是 alert()console.log()

obj[0].col1 是一个字符串,请尝试查看文档以查看图表值是否可以定义为字符串,或者只能定义为数字。在这种情况下,它似乎只接受数字。

同时,使用 parseInt 应该可以正常工作:

value: parseInt(obj[0].col1)