馃敟 TIME, SUMAR Y RESTAR A UNA FECHA

驴C贸mo sumar y restar tiempo a una fecha en Go?

Una ves que tenemos una estructura del tipo time.Time, podemos realizar operaciones, como sumar o restar una cantidad de tiempo a esta. Para hacer esto podemos utilizar el m茅todo Add.

Ejemplo de operaciones utilizando fechas en Go

El siguiente programa tiene el objetivo de imprimir la fecha actual, y despu茅s en base a esta calcular la fecha hace un a帽o y dentro de un a帽o.

package main

import (
    "fmt"
    "time"
)

func main() {

    ahora := time.Now()
    fmt.Println("Fecha en este momento:")
    fmt.Println(ahora)
    fmt.Println("Dentro de un a帽o:")
    fecha2 := ahora.Add(365 * 24 * time.Hour)
    fmt.Println(fecha2)
    fmt.Println("Hace un a帽o:")
    fecha3 := ahora.Add(365 * 24 * time.Hour * -1)
    fmt.Println(fecha3)

}

Descripci贸n del programa para realizar operaciones con fechas en Go

Capturamos en una variable la fecha actual.

ahora := time.Now()

Calculamos la fecha dentro de un a帽o, es decir 365 d铆as multiplicados por 24 horas.

fecha2 := ahora.Add(365 * 24 * time.Hour)

Calculamos la fecha hace un a帽o, para indicar que el c谩lculo se haga a la inversa, multiplicamos por -1.

fecha3 := ahora.Add(365 * 24 * time.Hour * -1)

Imprimimos tambi茅n cada una de las fechas, el programa nos arrojar谩 algo as铆.

$ go run main.go
Fecha en este momento:
2019-08-21 22:09:45.143274 -0400 EDT m=+0.000175347
Dentro de un a帽o:
2020-08-20 22:09:45.143274 -0400 EDT m=+31536000.000175347
Hace un a帽o:
2018-08-21 22:09:45.143274 -0400 EDT m=-31535999.999824653