2015-07-02 51 views
0

如何正确使用javascript中的数据字段?我不知道如何深入到他们...例如我可以使用数据,但我不能使用数据下的TaskName。请帮助谢谢你。json api响应数据字段

如果我分析是这样的反应:var data = JSON.parse(responseBody);

如何获得像TASKNAME场? 通常我会尝试类似data.TaskName === "003021919913"; 但这不起作用。

{ 
    "Data": { 
    "QRCode_ID": 168, 
    "Repairer_ID": null, 
    "AssignedToEmployee_ID": null, 
    "TaskName": "003021919913", 
    "DueDate": "2015-07-02T00:12:53.597", 
    "DueDateTimeSpan": 1959471956224, 
    "TaskStatus_ID": 1, 
    "Description": "due 6/30, 5:00", 
    "TaskUrgency_ID": null, 
    "TaskType_ID": null, 
    "DueDateDisplay": "2015-07-02 00:12",....... 
     } 
    }, 
    "Messages": [ 
    "success" 
    ] 
} 

回答

0

Udated答案:

你应该能够通过data.Data.TaskName访问 “TASKNAME”。

在这种情况下,您的库将您的JSON对象存储到var data中。此变量成为对象的引用,在对象内部它具有一个属性Data,该属性包含要使用的属性,您可以使用它来访问w/dot语法。

现在,别的东西可能会勾住你。在您的测试,你要确保你的测试TASKNAME反对003021919913在这种情况下,字符串值,如果你对数字测试它,你需要做的是这样:

var taskNameTest = parseInt(data.Data.TaskName); 
assert(taskNameTest).equal(003021919913); //not sure what assertion library you're using. 

希望这帮助。

+0

感谢您的回答。我使用一个名为Postman的工具调用一个API,并试图用一个名为Jetpacks的工具对它进行测试。基本上我称之为API,然后测试用这一行解析响应体:var data = JSON.parse(responseBody); 从那里,我需要做一个测试,验证其中一个数据的字段,即taskname等于一个特定的字符串在这种情况下003021919913.因此,这是即时通讯遇到问题,因为如果我写data.TaskName =“003021919913”它说它找不到它,因为大概我没有向下钻一层,因为我不知道如何... – besaidAuroch

+0

我只是看着更新的问题 - 你应该abl eto acccess它与data.Data.TaskName – Brodie