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

如何从嵌套数组中提取price_change字段,现有访问写法报错如何解决

问题原因

你的代码存在JavaScript对象属性访问的语法错误:response.data[0].["1d"]中混用了点语法和方括号语法,.[ 属于非法写法。

解决方法

JS中访问不符合标识符命名规范的属性(比如以数字开头、包含特殊字符的属性名),直接使用方括号语法即可,不需要额外加 . 修饰,将你的属性取值写法修改为:

response.data[0]["1d"].price_change

修改后的完整代码

var stockDiff = document.getElementById("stockDiffCrypto");
var thePrice = response.data[0]["1d"].price_change;

if (thePrice > 0) {
    stockDiff.innerHTML = `<i class='fas fa-angle-double-up'></i>`
    stockDiff.style.color = "green"
} else {
    stockDiff.innerHTML = `<i class='fas fa-angle-double-down'></i>`
    stockDiff.style.color = "red"
}

补充说明

  • JavaScript访问对象属性有两种合法写法:
    • 点语法:仅适用于属性名符合标识符命名规范的场景(属性名不能以数字开头,不能包含空格、特殊符号,不能是JS保留关键字)
    • 方括号语法:适用于所有属性名场景,属性名需要以字符串形式写在方括号内,直接跟在要访问的对象后,不需要加点

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 13:18:03