Jquery 如何检查是否存在,然后只提取值?

Jquery 如何检查是否存在,然后只提取值?,jquery,Jquery,对于ajax调用,我得到以下格式的响应 var response = { "wwc_tag_names": [{ "waterbreak_free": "waterbreak_free" }], "wwc_details": [{ "generatedid": "2", "timer_value": "5", "warmup_value": "00:01:00", "cooldown_val

对于ajax调用,我得到以下格式的响应

 var response = {
    "wwc_tag_names": [{
        "waterbreak_free": "waterbreak_free"
    }],
    "wwc_details": [{
        "generatedid": "2",
        "timer_value": "5",
        "warmup_value": "00:01:00",
        "cooldown_value": "00:01:00",
        "waterbreak_value": "00:02:30"
    }]
};
有时wwc_标记_名称数组由1-4个键值对组成

我正试图用这种方法提取它

var ajaxresfortags = response.wwc_tag_names;
    if(ajaxresfortags.length>0)
    {
var warmuptag = ajaxresfortags[0].warmuptag;
var cooldowntag = ajaxresfortags[1].cooldowntag;
var waterbreaktag = ajaxresfortags[2].waterbreak_free;
var waterbreaktagpaid = ajaxresfortags[3].waterbreak_paid;
}
这是我的小提琴


如果存在,则仅提取预热标记、冷却标记、无水破解、付费水破解

您访问了错误的变量以获取预热标记、冷却标记、无水破解、付费水破解。您应该使用ajaxres,而不是ajaxresfortags:

if(ajaxresfortags.length > 0)
{
 var ajaxResDetailsData = ajaxres[0];
 var warmuptag = ajaxResDetailsData.warmuptag;
 var cooldowntag = ajaxResDetailsData.cooldowntag;
 var waterbreaktag = ajaxResDetailsData.waterbreak_free;
 var waterbreaktagpaid = ajaxResDetailsData.waterbreak_paid;
}

我不确定你想达到什么目的,也不知道你的问题是什么。您有一个包含所需值的对象,并且您知道键是什么,因此只需根据需要检索它们即可。由于cooldowntag、warmuptag、waterbreak_paid不存在,我在浏览器控制台中没有定义,因为它在变量
ajaxres
中,而不是
ajaxresfortags