json 菜鸟问题:如何在JavaScript中访问此值?[duplicate]

uinbv5nw  于 2023-01-27  发布在  Java
关注(0)|答案(1)|浏览(122)
    • 此问题在此处已有答案**:

How can I access object properties containing special characters?(2个答案)
5天前关闭。
我以前从未使用过JavaScript,我对如何访问Object中的特定值感到困惑。
JSON看起来像这样:

{
   "payload":{
      "params":{
         "switch:0":{
            "output":false,  **<= trying to get this value ("false")**
         }
      }
   },
}

Node-Red是我正在使用的工具,它在调试窗格中像这样表示对象:

我假设这是一个数组,可以像这样访问:

value = msg.payload.params.switch[0].output

但我得到一个错误:

  • *"类型错误:无法读取未定义"**"的属性"0

如果我尝试:

value = msg.payload.params.switch

该值报告为**"未定义"**。
JavaScript中访问"输出"值的正确方法是什么?我在谷歌上搜索了一堆试图找到答案,但一直没有成功。
任何帮助都是感激的!

piztneat

piztneat1#

使用方括号表示法访问"switch:0"属性,因为它不是有效的标识符。

let o = {
   "payload":{
      "params":{
         "switch:0":{
            "output":false, 
         }
      }
   },
}
let res = o.payload.params['switch:0'].output;
console.log(res);

相关问题