猿问

从 json 访问对象

我有一个 ajax 调用,它在返回时接收一个 json 编码的对象。


success: function (response) {

jsonArrayResponse =  jQuery.parseJSON(response["data"]);

autoSearchValue = jsonArrayResponse['autoresult'];

我希望能够访问解码的不同部分。这是一些样本回报


{"success":true,"message":null,"messages":null,"data":"{\"errorText\":\"\",\"autoresult\":[{\"firstname\":\"Annon\",\"lastname\":\"Brooks\",\"date_of_birth\":\"1975-12-23 00:00:00\",\"id\":\"1\"},{\"firstname\":\"Josh\",\"lastname\":\"Ferns\",\"date_of_birth\":\"2000-09-02 00:00:00\",\"id\":\"2\"},

{\"firstname\":\"Alan\",\"lastname\":\"Templeton\",\"date_of_birth\":\"1975-08-02 00:00:00\",\"id\":\"3\"}}]}

我发现我可以通过以下方式访问名字


autoSearchValue[0]['firstname'];

但我不知道如何遍历其他名字值。我猜一旦你知道怎么做就很简单了。


任何帮助都会非常感谢


一只斗牛犬
浏览 258回答 3
3回答

婷婷同学_

autoSearchValue 是一个数组。只需在循环中使用索引:for (let index = 0; index < autoSearchValue.length; index++) {&nbsp; autoSearchValue[index]['firstname'];}

绝地无双

您可以通过迭代访问对象。作为一个选项,您可以使用 map 函数迭代数组,回调函数将接收参数的当前值,您可以修改或处理&nbsp; &nbsp;autoSearchValue.map((value) => {&nbsp; &nbsp; &nbsp; &nbsp;console.log(value.firstname)&nbsp; &nbsp; })

森林海

也许尝试遍历 json 对象的长度?每个循环都会增加计数器,因为您使用 autoSearchValue[0]['firstname'] 获得第一个名称,然后使用 autoSearchValue[1]['firstname'] 找到下一个,直到达到长度。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答