【发布时间】:2020-04-17 22:43:28
【问题描述】:
所以,我正在尝试处理 API。 我成功地在我的浏览器中加载了 json(这是一个对象数组),如下所示
0:
source: {id: null, name: "Protothema.uk"}
author: "james bond"
title: " A TITLE"
description: "A DESCRIPTION"
__proto__: Object
我的代码
$.getJSON("http://newsapi.org/v2/top-headlines?country=uk&category=health&apiKey=MYAPIKEY", function(data){
//console.log(data);
$.each(data,function(index,value){
console.log(value);
console.log(value[0]);
console.log(value[0].title)//Cannot read property 'title' of undefined
});
});
当我尝试打印像console.log(value[0]); 这样的整个索引时,我成功获取索引0 的所有对象。
但是当我尝试打印诸如 console.log(value[0].title) 之类的特定键值时,我得到 Cannot read property 'title' of undefined
我卡了几个小时,我做错了什么?
【问题讨论】:
-
数组只有1个元素,所以没有
value[1]。 -
试试
value[0].title -
value[0]... 不是value[1] -
@Barmar 对不起,我编辑它。不是
value[1]我的意思是我仍然想得到console.log(value[0].title) -
现在我猜你正试图在 API 调用返回之前打印它。记住 API 调用是异步的,你应该在回调函数中打印结果,而不是在调用之后。
标签: javascript arrays json api object