【问题标题】:how to substitute a javascript yahoo weather api call property with a variable如何用变量替换 javascript yahoo 天气 api 调用属性
【发布时间】:2015-03-14 20:25:17
【问题描述】:

这是一个可以正常工作并读取 yahoo 天气 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,没有区别。 我使用了+select+,它也导致了一个错误。 我的目标是有一个带有下拉菜单的页面,供用户选择天气项目并将选择权提供给上面的查询,因此需要一个变量。 请帮忙,谢谢。

【问题讨论】:

    标签: javascript variables assign


    【解决方案1】:

    试试这个:

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

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

    【讨论】:

    • 这和你描述的完全一样。非常感谢。现在我可以在我的下拉菜单上工作了。万岁
    • 如果此答案帮助您解决了您遇到的问题,您可以考虑通过单击旁边的勾号将其标记为答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-25
    • 2011-02-06
    相关资源
    最近更新 更多