如何将 JavaScript Yahoo Weather API 调用属性替换为变量

how to substitute a javascript yahoo weather api call property with a variable

本文关键字:属性 调用 替换 变量 API Weather JavaScript Yahoo      更新时间:2023-09-26

这是一个运行良好并读取雅虎天气 API 的脚本

<script>
  var callbackFunction = function(data) {
    var windy = data.query.results.channel.wind;
    alert(windy.chill);
  };
</script>
<script src="https://query.yahooapis.com/v1/public/yql?q=select wind from weather.forecast where woeid in (select woeid from geo.places(1) where text='chicago, il')&format=json&callback=callbackFunction"></script>

但是我需要将变量替换为 var windy = data.query.results.channel.wind;如

var select = "results";
var windy = data.query.select.channel.wind;

我所做的一切都不起作用。我在函数内部和外部定义了 var,没有区别。我使用了+选择+,它也导致了错误。我的目标是有一个带有下拉菜单的页面,供用户选择天气项目并为上面的查询提供选择,因此需要一个变量。请帮忙,谢谢。

试试这个:

var select = "results";
var windy = data.query[select].channel.wind;

使用 [] 表示法时,您可以根据需要传递动态属性名称。