Closure adalah fungsi yang merujuk variabel dari lingkup sekitarnya, "menutup" variabel tersebut — fungsi mempertahankan akses ke variabel tersebut bahkan setelah fungsi yang membungkus mengembalikan nilai. Fungsi Go adalah nilai kelas pertama, membuat closures menjadi alat yang umum dan kuat.
Closure dasar
{
count :=
{
count++
count
}
}
counter := makeCounter()
fmt.Println(counter())
fmt.Println(counter())
other := makeCounter()
fmt.Println(other())
