You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Chart.js+AJAX生成图表时数组日志显示异常求助

问题原因与解决办法

问题出在哪?

push()方法的返回值是数组添加元素后的新长度,不是修改后的数组本身。你写的代码:

visitsPerDay = visitsPerDay.push(Object.values(html.results[0])[0])

把push返回的数字(数组长度)重新赋值给了visitsPerDay,导致原本的数组变量被覆盖成了数字类型。

浏览器控制台有异步更新特性,会保留变量之前的状态快照,所以你能看到数组,但实际代码里visitsPerDay已经变成了数字——数字没有索引[0],也不会有正确的length值,这就是为什么你得到undefined和0。

另外注意你console语句里用的变量是visits,但数组变量是visitsPerDay,如果是笔误,也要统一变量名。

怎么解决?

直接调用push方法,不要把返回值赋值给原数组:

visitsPerDay.push(Object.values(html.results[0])[0])

这样visitsPerDay始终是数组类型,后续访问visitsPerDay[0]和visitsPerDay.length就能得到预期结果。

内容的提问来源于stack exchange,提问作者Strike

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 15:25:44