我正在使用来自天气API的数据构建小型天气应用程序。我必须将温度从开尔文转换为摄氏温度,然后使用子串去除所有小数。但是,有时温度低于0甚至-10摄氏度,所以我必须运行for循环以确保每次都获得相同的格式(最大1位小数)。
现在我的问题。我做了一个数组,将所有温度保持在摄氏温度。然后我运行循环以确保获得正确的格式(-11.5,1.9,18.7 ....)然后我将它添加到一个新的数组,然后一个json字符串。这一切都有效,但不知怎的,我不能使用$ scope将我的数据发送到HTML文件。
我做错了什么想法?
success(function (data, status, headers, config) {
$scope.forecast = data;
//Creates array with temperatures
var arrayTemp = [
data.list[0].temp.day-273.15,
data.list[1].temp.day-273.15,
data.list[2].temp.day-273.15,
data.list[3].temp.day-273.15,
data.list[4].temp.day-273.15,
data.list[5].temp.day-273.15,
data.list[6].temp.day-273.15
];
//Function that takes array as parameter, and makes the right format
function add(array){
var newArray = [];
for (i = 0; i < array.length; i++) {
if (array[i] > 0) {
if (array[i] > 10) {
var res = array[i].toString().substring(0, 4)
} else {
var res = array[i].toString().substring(0, 3)
}
} else {
if (array[i] > -10) {
var res = array[i].toString().substring(0, 4)
} else {
var res = array[i].toString().substring(0, 5)
}
}
//Add data to new array
newArray.push(res);
}
//Creates json
var json = {"temps":{"one":newArray[0],"two":newArray[1],"three":newArray[2],"four":newArray[3],"five":newArray[4],"six":newArray[5],"seven":newArray[6]}};
return json;
}
var newJson = add(arrayTemp);
$scope.data = newJson;
}).