从 JSON 获取键值对而不使用 .(DOT) 在 Java 脚本或 jquery 中

Fetch Key value pair from JSON without using .(DOT) in Java script or jquery

本文关键字:Java 脚本 jquery DOT 键值对 获取 JSON      更新时间:2023-09-26

如何在不使用dot(.)的情况下从下面的JSON中获取数据?

var JsonObj = {
  "database.status" : {
    "healthy" : false,
    "error" : {
      "message" : null,
      "stack" : [ "com.dhrubajyoti.tvs.utilities.DatabaseHealthCheck.check(DatabaseHealthCheck.java:26)", "com.codahale.metrics.health.HealthCheck.execute(HealthCheck.java:172)" ]
    }
  },
  "gs.status" : {
    "healthy" : true
  },
  "last.incremental.import" : {
    "healthy" : false,
    "error" : {
      "message" : null,
      "stack" : [ "org.springframework.jdbc.core.JdbcTemplate$SimplePreparedStatementCreator.createPreparedStatement(JdbcTemplate.java:1436)", "org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:581)", "org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:637)", "org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:666)", "org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:674)", "org.springframework.jdbc.core.JdbcTemplate.queryForObject(JdbcTemplate.java:734)", "com.dhrubajyoti.tvs.dao.IncrementalImportLogDaoImpl.findLatestImport(IncrementalImportLogDaoImpl.java:76)"]
    }
  },
  "last.incremental.update" : {
    "healthy" : false,
    "error" : {
      "message" : null,
      "stack" : [ "org.springframework.jdbc.core.JdbcTemplate$SimplePreparedStatementCreator.createPreparedStatement(JdbcTemplate.java:1436)" ]
    }
  },
  "memory.status" : {
    "healthy" : false,
    "message" : "Used memory 3 GB. Current threshold 0.8315874 is above alarm threshold 0.8"
  }
}

使用 [] 表示法,如下所示。阅读此处了解更多信息。

for (key in JsonObj) {
    alert(key + " is healthy: " + JsonObj[key]["healthy"]);
}

不太确定你在问什么。您是否在问如何使用括号表示法将键指定为字符串而不是点属性?JavaScript 对象:按字符串名称访问变量属性