这是一个可以正常工作的脚本并且可以读取yahoo weather 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 +它也导致错误。 我的目标是让一个带有下拉菜单的页面供用户选择天气项目并选择上面的查询,因此需要一个变量。 请帮忙,谢谢。
答案 0 :(得分:1)
试试这个:
var select = "results";
var windy = data.query[select].channel.wind;
使用[]
表示法时,您可以根据需要传递动态属性名称。