Javascript 将JSON树导航到Reddit API中的数据

Javascript 将JSON树导航到Reddit API中的数据,javascript,json,api,reddit,Javascript,Json,Api,Reddit,我会尽量保持简短。我现在是一名学生,一直试图从Reddit的首页检索前5篇文章,并在HTML页面上显示标题和URL。这可能是一件非常简单的事情,但我无法让它发挥作用。我想将数据从单个变量传递到我的Handlebar模板。我一直收到未处理的承诺警告。这是我的密码 let url = 'https://www.reddit.com/.json?limit=5'; let settings = { method: "Get"}; let redditData = "&qu

我会尽量保持简短。我现在是一名学生,一直试图从Reddit的首页检索前5篇文章,并在HTML页面上显示标题和URL。这可能是一件非常简单的事情,但我无法让它发挥作用。我想将数据从单个变量传递到我的Handlebar模板。我一直收到未处理的承诺警告。这是我的密码

let url = 'https://www.reddit.com/.json?limit=5';
let settings = { method: "Get"};
let redditData = ""
fetch(url, settings)
    .then(res => res.json())
    .then(data => {
        redditData = [
    {
    title: data.children.data.title,
    url: data.children.data.url_overriden_by_dest
    }
    ];
});

数据
对象的结构与编码方式不同。以下是如何从第一个孩子身上提取所需信息:

let url = 'https://www.reddit.com/.json?limit=5';
let settings = { method: "Get"};
let redditData = ""
fetch(url, settings)
    .then(res => res.json())
    .then(data => {
        redditData = [
    {
    title: data.data.children[0].data.title,
    url: data.data.children[0].data.url_overriden_by_dest
    }
    ];
});

您可能需要查看一些有关函数
fetch
如何工作的文档

另外,检查承诺是如何起作用的

也就是说,只有在Promise完成检索数据时,您才必须访问对象属性。一种方法是使用
Promise.allSettled
函数

请参见以下代码段,其组织方式略有不同:

consturl=”https://www.reddit.com/.json?limit=5";
const promise=fetch(url).then(res=>res.json());
函数格式HandleBarsData(数据){
const childrenObj=data.value.data.children;
返回childrenObj.map(元素=>({
标题:element.data.title,
url:element.data.url
}));
}
承诺。全部结算([承诺])。然后([数据])=>{
const handlebarsData=格式化handlebarsData(数据);
//现在可以使用该对象了
控制台日志(把手数据);

});太棒了。我能让它和你一起工作

let url = 'https://www.reddit.com/.json?limit=5';
let settings = { method: "Get"};
let redditData = ""
fetch(url, settings)
    .then(res => res.json())
    .then(data => {
        redditData = [
    {
    title: data.data.children[0].data.title,
    url: data.data.children[0].data.url_overriden_by_dest
    }
    ];
});
谢谢

此外: