如何使用天气 api 删除天气预报中的第一个天气

How to remove the first weather in weather forecast using weather api

这是代码。

setWeatherForecast(unit: any, scaleTemp: any) {
    this.forecast.splice(0, this.forecast.length);
    this.weatherService.getLocation().subscribe(data => {
      this.lat = JSON.parse(data['_body']).latitude;
      this.lon = JSON.parse(data['_body']).longitude;

      this.weatherService
        .fiveDayForecast(this.lat, this.lon, unit)
        .subscribe(forecastData => {
          for (let i = 0; i < forecastData.list.length; i = i + 8) {
            console.log(forecastData.list[i]);
            const forecastWeather = new Forecast(
              forecastData.city.name,
              forecastData.list[i].weather[0].description,
              forecastData.list[i].main.temp.toFixed(0) + scaleTemp,
              forecastData.list[i].dt_txt.replace(/\s/, 'T'),
              forecastData.list[i].weather[0].icon
            );
            this.forecast.push(forecastWeather);
          }
          return this.forecast;
        });
    });
  }

我想要的是去除天气预报中的第一个天气。 例如。

周五、周六、周日、周一、周二、周三

它将删除星期六。它只显示周日到周二。

this.forecast.splice(0,1);

this.forecast.shift()

有关更多说明,请参阅此 link

现在从您的预测数组中删除第一个索引。

return this.forecast.shift();

删除预报中的第一个天气。

您可以使用 shift() - 方法从数组中删除第一个元素,然后 returns 删除。

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/shift

你应该使用拼接

this.forecast.splice(0, 1)

其中 0 是索引位置,1 是要删除的元素数

例子

list=["bar", "baz", "foo", "qux"]
list.splice(2, 1)
// Starting at index position 2, remove one element
["bar", "baz", "qux"]