为了账号安全,请及时绑定邮箱和手机立即绑定

Golang 相当于 JavaScript 的参数?

Golang 相当于 JavaScript 的参数?

Go
慕莱坞森 2021-09-21 17:38:55
有没有一种 golang 方式来获取函数的运行时参数?我问是因为我正在尝试编写一个函数,该函数接受一个函数和一个字符串,然后输出字符串和运行时参数。
查看完整描述

1 回答

?
斯蒂芬大帝

TA贡献1827条经验 获得超8个赞

与可以使用声明中未包含的额外参数调用函数的 JavaScript 不同,对 Go 函数的调用必须与函数签名匹配。所以不需要特殊的arguments全局变量。


话虽如此,可以编写可以接受可变数量参数的可变参数函数。例如,以下函数将接受一个字符串,后跟任意数量的整数参数:


func foo(s string, args ...int) {

    ...

}

在函数体args中将有一个[]int切片,因此您可以确定使用 传递了多少参数len,并像处理任何其他切片一样遍历它们。


如果你想接受任何类型的参数,你可以使用空白接口作为类型:


func bar(args ...interface{}) {

    ...

}

现在args将是一个[]interface{}切片。您可以使用类型断言或类型 switch解压缩传入的值。


查看完整回答
反对 回复 2021-09-21
  • 1 回答
  • 0 关注
  • 168 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信