当我们键入多动态数组的静态内容和创建数组的数组时有什么区别

发布于 2024-09-24 15:27:18 字数 973 浏览 4 评论 0原文

如果我使用下面的静态值,那么我的代码工作正常:

ohlc = [[090300, 25.75, 25.75, 25.75, 25.75], 
  [090400, 25.75, 25.75, 25.75, 25.75], 
  [090700, 25.73, 25.73, 25.73, 25.73], 
  [091300, 25.76, 25.76, 25.76, 25.76]];

但是如果我使用下面的代码,那么我的代码就无法工作,

var labels = xmlDoc.getElementsByTagName('node');
        arr = new Array();
        var str = '';
        for (i = 0; i < labels.length; i++) {
            if (labels[i].childNodes.length >= 9) {
                arr[i] = new Array(5);
                arr[i][0] = labels[i].childNodes[1].textContent;
                arr[i][1] = labels[i].childNodes[3].textContent;
                arr[i][2] = labels[i].childNodes[5].textContent;
                arr[i][3] = labels[i].childNodes[7].textContent;
                arr[i][4] = labels[i].childNodes[9].textContent;
            }


        }

即使我在 arr 上循环并警告该值,也比我复制了数组的值并粘贴静态及其工作.. 我正在读取 xml 并创建一个 2D 数组以在 jqphot 中显示图表。 请给我一个线索

if i am using below static values than my code is working fine:

ohlc = [[090300, 25.75, 25.75, 25.75, 25.75], 
  [090400, 25.75, 25.75, 25.75, 25.75], 
  [090700, 25.73, 25.73, 25.73, 25.73], 
  [091300, 25.76, 25.76, 25.76, 25.76]];

but if i am using below code than my code is not working

var labels = xmlDoc.getElementsByTagName('node');
        arr = new Array();
        var str = '';
        for (i = 0; i < labels.length; i++) {
            if (labels[i].childNodes.length >= 9) {
                arr[i] = new Array(5);
                arr[i][0] = labels[i].childNodes[1].textContent;
                arr[i][1] = labels[i].childNodes[3].textContent;
                arr[i][2] = labels[i].childNodes[5].textContent;
                arr[i][3] = labels[i].childNodes[7].textContent;
                arr[i][4] = labels[i].childNodes[9].textContent;
            }


        }

even i did loop on arr and alert the value than i have copyed value of array and pasted static and its working..
i am reading xml and creating an 2D array to show chart in jqphot.
please give me a clue for this

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

娇纵 2024-10-01 15:27:18

您可能需要将文本字符串转换为数字。您可以使用 parseFloat 函数:

// ...
arr[i] = new Array(5);
arr[i][0] = parseFloat(labels[i].childNodes[1].textContent);
// ...

You probably need to convert the text strings to numbers. You would use the parseFloat function for that:

// ...
arr[i] = new Array(5);
arr[i][0] = parseFloat(labels[i].childNodes[1].textContent);
// ...
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文