簡體   English   中英

字符串中的 Javascript 數組,如何在數組中獲取它?

[英]Javascript array in string, how to get it in an array?

今天我一直在嘗試使用 canvasjs 創建一個圖表。 一切都很順利。 現在腳本需要從不同的站點獲取圖表信息。 當您創建對該頁面的請求時,它會返回如下內容: {x: 0.33, y: 2},{x: 0.33, y: 1} 這是我的腳本:

        window.onload = function () {

        var previousprice = 0;

        var dps = []; // dataPoints
        var chart = new CanvasJS.Chart("priceChart", {
            title :{
                text: "Coins"
            },
            axisY: [{
                includeZero: false,
                title: "dollar"
            }], 
            axisX: {
                title: "coins"
            },
            data: [{
                type: "line",
                dataPoints: dps
            }]
        });

        var xVal = 0;
        var yVal = 100; 
        var updateInterval = 1000;
        var dataLength = 300;

        var updateChart = function (count) {

            count = count || 1;

            if (dps.length < dataLength) {
            var hihi = httpGet(location.protocol+"//"+window.location.hostname+"/inc/php/functions.php?method=get300");
            console.log(hihi);
                dps.push(hihi);
            }
            console.log(dps.length);

            if (dps.length > dataLength) {
                dps.shift();
            }

            chart.render();
        };

        updateChart(dataLength);
        setInterval(function(){updateChart()}, updateInterval);

        }

因此,要將項目添加到圖表中,我需要使用(示例) dps.push({x: 12, y: 65})dps.push({x: 12, y: 65}, {x: 13, y: 50}) ,但是當我從 url 得到它時,它不起作用。 可能是因為它是一個字符串。

如何將字符串轉換為我需要的數組?

您需要將字符串解析為 JSON 並將所有響應對象推送到您的結果數組。

var dps = [];
var responseJson = JSON.parse(hihi);
responseJson.forEach(function(item) {
  dps.push(item);
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM