我的代码中出现了一个非常奇怪的错误。我正在构建一个天气预报网站,它使用地理位置来查找您居住的城市,然后使用 wunderground 的 API 为您提供天气预报。问题是,当您使用搜索框手动搜索城市时,预测温度以 NAN 形式返回,但当它使用您的坐标时,它会正确返回。我不知道为什么会发生这种情况。
我将所有代码发布在 JSBIN 上:http://jsbin.com/agigeb/edit#javascript
我认为这可能与我如何从字符串中提取温度有关(我不使用它提供的整数温度,因为它不提供根据一天中的时间变化的整数温度,例如,如果是早上,则返回下午的天气预报,如果是晚上,则返回第二天早上的天气预报)
该部分发布在此 JSBIN 上:http://jsbin.com/etupun/edit#javascript
预先感谢您的帮助, jack 。
最佳答案
如果您查看这两个请求返回的 JSON,您可以看到发生了什么:
http://api.wunderground.com/api/50ada0a5f0afbaec/geolookup/conditions/forecast/q/30301.json
http://api.wunderground.com/api/50ada0a5f0afbaec/geolookup/conditions/forecast/q/atlanta.json
后面的查询使用文本搜索字符串,返回可能匹配的数组,而不是像 zip 或纬度/经度搜索那样返回单个预测。
您可以使用“结果”数组中一项的“zmw”值来检索该单个城市的天气预报。
关于javascript - 从 JSON 中提取数字时返回 NAN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8860592/