<script>
var apikey = "someKey";
var SEid = "0137454dfgsdfgsdfgzxv4435099:pnqp_fvtmsy";
var query = "Flower";
var returnedData;
$.get("https://www.googleapis.com/customsearch/v1?key=" + apikey + "&cx=" + SEid + "&q=" + query, function(data){
console.log(data);
returnedData = data;
});
console.log(returnedData.items[1].formattedUrl);
</script>
我一直收到错误Uncaught TypeError:无法读取属性&#39; items&#39;未定义的
但我无法弄清楚为什么返回的数据未定义。我之后之后我甚至都没有尝试引用它。我已经调用了get请求。
请不要将此问题标记为无效,我真的想弄清楚这一点并且在过去两天尝试了各种方法,但我无法弄明白。
答案 0 :(得分:1)
$.get
正在异步运行 - 一旦脚本到达该行,它只是发出请求,它不会在继续之前等待请求完成。< / p>
您无法返回异步生成的值。但是,您可以返回承诺,在解决后,使用所需的值进行解析。
答案 1 :(得分:0)
直接使用returnedData.toJSON().items
或returnedData.get(items).get(0)
。