Javascript 数组不带引号

标签 javascript php arrays json

我一直在绞尽脑汁地想弄清楚这个问题。 我正在使用 ZingChart 绘制 MySQL 查询中的一些数据。我将数据放入 PHP 数组中,然后使用:

var myData = <?php echo json_encode($combined); ?>;

将其放入 JavaScript 数组中。 如果我这样做:

document.write(myData[0]);

然后它会显示该索引的正确值。当我尝试将数组与 ZingChart 的 JSON 一起使用时,我发现它在所有数据周围都加上了引号,但出于某种原因,它不喜欢这样做。如果我使用记事本手动删除引号,数据显示得很好,所以我知道这只是以某种方式删除这些引号的问题。

例如,当我从页面查看源代码时,它的外观如下:

var myData = [["1466766034467","71.191"],["1466766094482,71.1986"]];

我尝试了很多方法,花了很多时间尝试将数据传递到 JSON(不带引号),但我知道的足够危险,所以希望有人可以指导我。

document.write(myData[1]); 

结果为:1466766094482,71.1986

提前致谢。

最佳答案

假设您运行的是最新版本的 php,您可以将 JSON_NUMERIC_CHECK 添加到 json_encode() 选项参数

json_encode($combined, JSON_NUMERIC_CHECK);

参见json_encode docs

或者在 JavaScript 中使用各种方法迭代数组并将值转换为数字

myData.forEach(function(arr){
    arr[0] = +arr[0];
    arr[1] = +arr[1];
})

关于Javascript 数组不带引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38043701/

相关文章:

javascript - 格式化 json 以满足我的需要或更好的方法

php - 使用数据库而不是配置文件来存储配置

javascript - 单击功能未被调用

javascript - 如何在完成后停止这个 javascript 倒计时?

javascript - 上传到亚马逊 S3

javascript - 如何从禁用 javascript 的页面重定向到上一页?

java - 如何将非基本类型数组中的所有元素值设置为值/非空?

c - 在 C 中打印数组的随机元素

c++ - 二进制搜索树数组 Imp。 C++

javascript - 在 knockout 中递归调用 foreach