Function as Value
Di golang, function juga merupakan sebuah tipe data dan Dapat dianggap sebagai nilai. Sehingga kita dapat menyimpan function ke dalam sebuah variabel. Buat lebih jelasnya, perhatikan Teladan code berikut.
package main
import "fmt"
func sayHiTo(name string) string {
return "Hi, " + name
}
func main() {
hi := sayHiTo
result := hi("Rizky")
fmt.Println(result)
}
output:
Pada Teladan di atas, kita Membangun sebuah function dengan nama sayHiTo
yang Mempunyai satu buah parameter string Adalah name
. Karena function merupakan sebuah tipe data yang artinya function adalah value atau nilai, sehingga dalam function main kita menyimpan function sayHiTo
ke dalam variabel bernama hi
. Variabel ini kemudian dapat kita panggil seperti kita memanggil function seperti Normal.
Apa Manfaatnya?
Berdasarkan Teladan yang kita buat sebenarnya penggunaan function sebagai value ini Kagak terlihat Mempunyai manfaat apapun ya, malah terkesan memperpanjang kode kita.
Function as value ini dapat kita gunakan ketika kita Membangun sebuah function yang membutuhkan function lain sebagai parameternya, atau function yang mengembalikan function lain.
Pada materi berikutnya akan kita bahas bagaimana menggunakan function sebagai parameter.
#25: Function as Parameter