Javascript 需要通过JSON循环的帮助,这是由针对不同请求具有不同结构的API产生的

Javascript 需要通过JSON循环的帮助,这是由针对不同请求具有不同结构的API产生的,javascript,ajax,json,Javascript,Ajax,Json,我试图从一个由API发送的JSON结果的第一个“条目”中检索第一个“dt”,不幸的是,对于不同的请求,它有不同的结构 生成的JSON代码太长,无法粘贴到这里,因此我给出了直接的API url API URL: 尝试一些医学单词,而不是URL中的“医学单词”,将导致不同请求的不同结构化JSON 例如:如果单词=眼睛生成一个结构和 血液会产生另一种结构 我只想从每个JSON中检索第一个“dt”的值。 我该如何实现这一点,JavaScript代码将如何实现 在索引HTML中,JSON响应将存储在名为r

我试图从一个由API发送的JSON结果的第一个“条目”中检索第一个“dt”,不幸的是,对于不同的请求,它有不同的结构

生成的JSON代码太长,无法粘贴到这里,因此我给出了直接的API url

API URL:

尝试一些医学单词,而不是URL中的“医学单词”,将导致不同请求的不同结构化JSON

例如:如果单词=眼睛生成一个结构和 血液会产生另一种结构

我只想从每个JSON中检索第一个“dt”的值。 我该如何实现这一点,JavaScript代码将如何实现

在索引HTML中,JSON响应将存储在名为result的对象中


var result=JSON.parse(xmlhttp.responseText)

我得快点,我在工作。。。它认为这应该可行,但必须有一个框架

function findDt(obj){
    if( typeof obj !== "object"){
        return;
    }
    var res =null;

    Object.getOwnPropertyNames(obj).some( function (prop) {
        if(prop === "dt") {
            res = obj["dt"];
            return res;
        }
        res = findDt( obj[prop] );
        return res;
    });
    return res;
}

这非常有效,兄弟,这是我不久后关于这个问题的第三篇文章,谢谢。<但我想知道这个对象。getOwnPropertyNames(obj)。这里有些()就可以了,你能告诉我一点吗..我不是JS开发人员,所以肯定还有另一个解决方案。Object.getOwnPropertyNames将为您提供arg对象的“键”(不是原型链接中的键,但JS中没有这样的链)。有些人会执行回调函数,直到返回有效结果。是的,这并不完美,但我是Java开发人员,不是JS:p和