代码之家  ›  专栏  ›  技术社区  ›  Success Man

如何以数字和字母组合的形式显示javascript对象的值?[副本]

  •  -1
  • Success Man  · 技术社区  · 5 年前

    这个问题已经有了答案:

    我的javascript对象如下:

    {
        "container_status": {
            "name": "/dev-ms",
            "port": {
                "2233/tcp": [
                    {
                        "HostPort": "123"
                    }
                ]
            }
        }
    }
    

    我想显示密钥hostport的值

    我试着这样做:

    console.log(data.container_status.port.2233/tcp[0].HostPort
    

    但它不起作用

    存在错误: Unexpected token, expected

    如何解决此错误?

    1 回复  |  直到 5 年前
        1
  •  1
  •   brk    5 年前

    像这样用方括号 ['2233/tcp'] . 这是因为 / in name对象名无效,除非使用use dot表示法

    2233/tcp 将是无效的对象名

    let data = {
      "container_status": {
        "name": "/dev-ms",
        "port": {
          "2233/tcp": [{
            "HostPort": "123"
          }]
        }
      }
    }
    
    console.log(data.container_status.port['2233/tcp'][0].HostPort)