如何停止打印“ [object Object]”而不是对象本身?

时间:2019-08-18 19:34:29

标签: javascript html

我的问题可能有一个非常简单的修复程序,但是我是javascript新手,似乎无法找到答案。脚本如下:

var proxyUrl = 'https://cors-anywhere.herokuapp.com/',
    targetUrl = 'https://api.darksky.net/forecast/[key]/[latitude],[longitude]'
fetch(proxyUrl + targetUrl)
  .then(blob => blob.json())
  .then(data => {
    console.log(data);
    document.getElementById('weather').innerHTML = data;
  })

但是,当我运行它时,<p>元素不会更改为数据本身,而是更改为“ [object Object]”。我在做什么错?任何帮助表示赞赏。

PS:targetUrl变量在参数所在的位置具有占位符,不会按原样运行。

2 个答案:

答案 0 :(得分:4)

据我了解,您正在尝试将数据打印到ID为“天气”的<p>元素中。

请替换下一行。

document.getElementById('weather').innerHTML = JSON.stringify(data);

它将正常工作。

答案 1 :(得分:0)

检查API调用返回的数据,然后将其添加到html中。我认为它正在返回一个对象,而您正在尝试在DOM中显示该对象。