试图找出免费的生态管理任务,但它甚至无法跟踪youtube教程fuyYnI&t=1385s。请帮忙,这个代码有什么问题吗?
var API_KEY = "xxxxxxxxxxxxxxxxxxxxxx";
$(function () {
var loc;
$.getJSON('http://ipinfo.io', function (d) {
console.log("assigning the data...")
loc = d.loc.split(" , ");
console.log(loc);
$.getJSON('http://api.openweathermap.org/data/2.5/weather?lat=' + loc[0] + '&lon=' + loc[1] + '&APPID=' + API_KEY, function (wd) {
console.log("got the data ,", wd);
})
})
})发布于 2017-03-01 15:42:36
不要在",“(注意空格)上分裂”,“
不是:
loc = d.loc.split(" , ");但是:
loc = d.loc.split(",");语法:string.split(分隔符,限制) 分隔符:可选。指定用于拆分字符串的字符或正则表达式。如果省略,整个字符串将被返回(一个只有一个项的数组)。 限制:可选。指定拆分数的整数,拆分限制后的项将不包含在数组中。
通过使用多个字符的字符串,我认为JavaScript将其解释为正则表达式。
发布于 2017-04-24 21:31:51
如前所述,问题在于逗号周围的空格是否存在于:
loc = d.loc.split(" , ");相反,这应该是:
loc = d.loc.split(",");原因:来自ipinfo.io IP查找API的响应包含一个JSON对象,loc字段是坐标逗号,没有空格分隔。
例如:
{
"ip": "203.205.28.14",
"hostname": "static.cmcti.vn",
"city": "Ho Chi Minh City",
"region": "Ho Chi Minh City",
"country": "VN",
"loc": "10.8142,106.6438",
"org": "AS45903 CMC Telecom Infrastructure Company"
}建议:在发布已完成的freeCodeCamp挑战时,避免暴露您的开放天气地图私钥(appid) (我使用CodePen,我不喜欢公开私钥的想法,因此我编写了一个JS脚本,任何人都可以将其复制和粘贴到一个新的Google中,并将其用作传递服务)。
https://stackoverflow.com/questions/42530859
复制相似问题