繁体   English   中英

在Google脚本自定义函数中接受任意数量的参数?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM