我正试图弄清楚如何通过JavaScript访问两个词典中的值。
服务器的JSON输出是;
{ “元”:{}, “连接”:{custom_fields “:[{” ID “:” 4" , “姓名”: “部门”}], “custom_field_values”:[{ “ID”:” 0001" , “值”: “市场”, “链接”:{ “custom_field”:{ “ID”: “4”, “类型”: “custom_fields”}}}]
我需要将营销列为部门。我似乎无法访问“链接”来拉取ID。
如果我创建var linked = linked.custom_field_values;
,我会收到回复。
{ “ID”: “0001”, “值”: “市场”, “链接”:{ “custom_field”:{ “ID”: “4”, “类型”: “custom_fields”}}}
一旦我尝试var cfl = linked.links.custom_field.id
,就会说链接没有定义。所以我不确定在尝试为此创建变量时我做错了什么?
链接是一个带有Custom_field的字典,右边是带有我需要的值的字典。
如果一切正常,这不会正确打印出部门吗?
if(cfl.id == 4){
console.log('Department is ' + linked.value);
}
答案 0 :(得分:0)
它看起来像custom_field_values
一个数组。您必须查看数组中的第一项,如var linked = linked.custom_field_values[0];
答案 1 :(得分:0)
使用正确的格式化对象,您会看到内部有一个数组。所以你需要为数组取一个索引。
var object = {
meta: {},
linked: {
custom_fields: [
{
id: "4",
name: "Department"
}
],
custom_field_values: [
{
id: "0001",
value: "Marketing",
links: {
custom_field: {
id: "4",
type: "custom_fields"
}
}
}
]
}
};
console.log(object.linked.custom_fields[0].id);
console.log(object.linked.custom_field_values[0].id);