jQuery使用数组键/值从循环中获取值

2ekbmq32  于 2023-06-22  发布在  jQuery
关注(0)|答案(1)|浏览(156)

我在JQuery中循环数据,我想从数组中检索一个特定的键
所以我在循环内部尝试了这段代码,从循环中返回的一个值中获取键

data[i].dns_types[ data[i].type ]

但是这不起作用,我在下面创建了一个小提琴来重新创建我的代码。
获取dns_types[ data[i].type ]的值将从数组中返回正确的值
https://jsfiddle.net/h7cgbyqt/

jq6vz3qz

jq6vz3qz1#

1.您的dns_types是字符串,因此需要将其解析为JSON
1.必须将datadns_types用作两个单独的变量

var dns_types = '{"A":"ip","AAAA":"ipv6","CNAME":"target","MX":"","TXT":"","SRV":"","NS":""}';
var dnsTypesJson = JSON.parse(dns_types);

var data = [
    {
        "target": "1.2.3.5",
        "ref": 56283838,
        "host": "www.computerbuilder.co.uk",
        "type": "CNAME"
    },
    {
        "target": "129.0.0.1",
        "ref": 56283838,
        "host": "www.computerbuilder.co.uk",
        "type": "CNAME"
    }
];

for(var i in data) {
    let subData = data[i];
    let type = dnsTypesJson[subData.type];
  
    alert(subData[type]);
}

相关问题