JavaScript:由于保留了var,因此无法从XML文件中获得@var-值



我正在尝试从OpenWeatherMap-Webservice获取一些天气数据。数据中也是A ICONCODE,以可视化当前的天气条件。这是给定请求的XML反应:

请求:

http://api.openweathermap.org/data/2.5/forecast?q=linz&units=metric&type=accurate&mode=xml&APPID=ef67184baece136977466e7894b2a614

响应的一部分:(我稍微缩短了一点(

<weatherdata>
<location>...</location>
<credit/>
<meta>...</meta>
<sun rise="2017-05-30T03:07:24" set="2017-05-30T18:54:07"/>
<forecast>
  <time from="2017-05-30T09:00:00" to="2017-05-30T12:00:00">
   <symbol number="800" name="clear sky" var="02d"/>
   <precipitation/>
   <windDirection deg="223" code="SW" name="Southwest"/>
   <windSpeed mps="2.31" name="Light breeze"/>
   <temperature unit="celsius" value="29.59" min="27.52" max="29.59"/>
  </time>
  <time from="2017-05-30T12:00:00" to="2017-05-30T15:00:00">
   <symbol number="800" name="clear sky" var="01d"/>
   <precipitation/>
   <windDirection deg="227.001" code="SW" name="Southwest"/>
  </time>

我想检索所有预测周的所有图标。(并且在温度,风向等方面正常工作...

应该从Web服务中获取数据的功能的一部分:

for each (var item in xmlPage.forecast.time) {
var row = new Object();
var from_current_value=item.@from.substring(0,10);
if(from_current_value!=from_today_value){
    row.WindDirection = item.windDirection.@name;
    row.WindSpeed=item.windSpeed.@mps;
    row.WeatherTemp=parseFloat(item.temperature.@value);
    row.WeatherHumidity=parseFloat(item.humidity.@value);
    row.From=item.@from;
    row.To=item.@to;
    row.Title=xmlPage.location.name+" "+xmlPage.location.country;
    row.Precipitation=(item.precipitation.@type+" "+item.precipitation.@value)==" "?"No Precipitation":item.precipitation.@type;
    var iconCode = item.symbol.@var;
    row.IconLink = "http://openweathermap.org/img/w/"+ iconCode +".png";

如果我添加了行var iconcode = item.symbol。@var,我会得到以下语法错误:

syntax check failed: missing name after .@ (Line#33)

(line33是" var iconcode = item.symbol。@var" line(

我认为我会遇到错误,因为" var"是JavaScript中的一个保留字符串。但是,如何从xmlpage获得ICONCODE?有什么建议吗?

非常感谢您提前帮助我!此致,Theresa

根据其文档,您应该使用:

forecast.symbol.var

(在您的情况下

顺便说一句,使用JSON可能会更容易?

相关内容

  • 没有找到相关文章

最新更新