在数组上映射一个 void(non-returning 函数)

Map a void (non-returning function) over an array

标题是self-explanatory,是否有任何映射方式,例如,addGestureRecognizerUIGestureRecognizers 的数组上。我一直在摆弄

的变体
recognizers.map(MyWebOutlet.addGestureRecognizer)

但是由于 built-in 映射必须 return 中的另一个数组需要一个 return 某种值的函数。我应该将 addGestureRecognizer 包装在另一个 returning 函数中还是另一种更聪明的方法?

map 旨在 return 来自另一个数组的数组,该数组应用了给定的 转换 (通过转换每个元素)。因此,您传递给它的函数自然必须 return 转换后的元素。

在你的例子中,你实际上并没有转换元素,你只是想在函数的参数中使用它们。为此,您可以使用 forEach.

recognizers.forEach(MyWebOutlet.addGestureRecognizer)