使用数组作为函数调用参数

在 JavaScript 中,您可以使用.apply来调用函数并传入数组/切片以用作函数参数。


function SomeFunc(one, two, three) {}


SomeFunc.apply(this, [1,2,3])

我想知道 Go 中是否有等价物?


func SomeFunc(one, two, three int) {}


SomeFunc.apply([]int{1, 2, 3})

Go 示例只是给你一个想法。


qq_笑_17
浏览 241回答 2
2回答

波斯汪

它们被称为可变参数函数并使用...语法,请参阅语言规范中的将参数传递给 ... 参数。一个例子:package mainimport "fmt"func sum(nums ...int) (total int) {    for _, n := range nums { // don't care about the index        total += n    }    return}func main() {    many := []int{1,2,3,4,5,6,7}    fmt.Printf("Sum: %v\n", sum(1, 2, 3)) // passing multiple arguments    fmt.Printf("Sum: %v\n", sum(many...)) // arguments wrapped in a slice}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go