[英]Accept Arbitrary Number of Arguments in Google Scripts Custom Function?
我正在尝试将COUNTIFS重新构建为Google脚本自定义函数,并且遇到一件事:我如何构建一个接受任意数量参数的函数?
如果您在Google工作表中使用COUNTIFS,则输入如下所示:
=COUNTIFS(criteria_range1, criterion1, [criteria_range2, criterion2, ...])
我的Google脚本可以是这样的:
function COUNTIFS(criteria_range1, criterion1){
// CountIFS code
}
...但是如何在我的函数中获取可选参数?
当传递给函数的参数数量可变时,您可以引用arguments对象 。
(示例支持AdamL的答案。)
自定义函数的自动完成功能会稍微滥用jsdoc标记。 通常用大括号括起来的“参数类型”,例如{String}
,在函数帮助的“示例”部分中逐字使用,而参数名称在快速帮助中使用。
您可以利用此功能来阐明具有任意参数的函数,如此处所示。
码
/**
* Calculate the driving distance along a route.
*
* @param {"london","manchester","liverpool"}
* route Comma separated ordered list of two or more map
* waypoints to include in route. First point
* is 'origin', last is 'destination'.
*
* @customfunction
*/
function drivingDistance(route) {
if (arguments.length < 2) throw new Error( "Must have at least 2 waypoints." )
var origin = arguments[0];
var destination = arguments[arguments.length-1];
...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.