JavaScript错误类型:无法读取未定义的属性

发布于 2025-02-13 22:47:29 字数 1304 浏览 0 评论 0原文

我真的希望有人能够帮助我解决我遇到的错误。我有一个终点,我要返回嵌套的JSON响应。我正在遍历数据集,并将值写入控制台并运行效果很好。当我走到最后时,这似乎是错误的,

TypeError: Cannot read properties of undefined (reading 'orderTotal')

这是我下面的代码,任何帮助都将不胜感激。我搜索高低寻求答案。

 function updateChart() {
        
        async function fetchData() {
            const url = '/admin/Dashboard/GetEvents';
            const response = await fetch(url);

            const datapoints = await response.json();
            console.log(datapoints);

            return datapoints;
        }

        fetchData().then(datapoints => {
        
            var orderTotal=0.0;
            
            for (let i = 0; i < datapoints.length; i++) {
                for (let j = 0; j <= datapoints[i].length; j++) {
                    for (let k = 0; k < datapoints[i].length; k++) {
                        orderTotal+=datapoints[j][k].orderTotal;

                    }


                }
                console.log(orderTotal);
                console.log(j);
                console.log(k);

            }
         

            myChart.update();

        }).catch(e => {
        console.log(e);
    });;


    }

在此处输入图像描述

I really hope that someone will be able to help me with an error I am getting. I have an endpoint where I am returning a nested json response. I am looping through the dataset and writing the values to the console and works great. When I get to the end it seems to error with this

TypeError: Cannot read properties of undefined (reading 'orderTotal')

This is my code below and any help would be really appreciated. I have searched high and low for an answer.

 function updateChart() {
        
        async function fetchData() {
            const url = '/admin/Dashboard/GetEvents';
            const response = await fetch(url);

            const datapoints = await response.json();
            console.log(datapoints);

            return datapoints;
        }

        fetchData().then(datapoints => {
        
            var orderTotal=0.0;
            
            for (let i = 0; i < datapoints.length; i++) {
                for (let j = 0; j <= datapoints[i].length; j++) {
                    for (let k = 0; k < datapoints[i].length; k++) {
                        orderTotal+=datapoints[j][k].orderTotal;

                    }


                }
                console.log(orderTotal);
                console.log(j);
                console.log(k);

            }
         

            myChart.update();

        }).catch(e => {
        console.log(e);
    });;


    }

enter image description here

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

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

发布评论

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

评论(1

清浅ˋ旧时光 2025-02-20 22:47:31

看起来数组数据点的条目之一是未定义的。在这种情况下,数据点[J] [K]是未定义的,并且导致上述错误。您可以验证数据点的日志以确认

Looks like one of the entries of array datapoints is undefined. In this case datapoints[j][k] is undefined and it is leading to the above error. You can verify the log for datapoints to confirm

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文