在 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 示例只是给你一个想法。
2 回答
波斯汪
TA贡献1811条经验 获得超4个赞
它们被称为可变参数函数并使用...语法,请参阅语言规范中的将参数传递给 ... 参数。
一个例子:
package main
import "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
}
- 2 回答
- 0 关注
- 240 浏览
添加回答
举报
0/150
提交
取消