是否可以在不给对象的情况下运行函数?

时间:2019-06-18 19:28:03

标签: r function dplyr

我想知道是否有运行该功能的功能。

例如,如果我可以编写的最简单的函数是:

function(){
  print("hello world")
}

据我所知,“运行”此功能的唯一方法是运行以下内容:

my_fun <- function(){
  print("hello world")
}

my_fun()

有没有一种方法可以在不给该函数一个对象的情况下实现此结果?直观上,我认为这与%>%并没有太大不同,但是我在思考如何执行此操作时遇到了麻烦。是否可以通过管道运行该函数而不给它自己的对象?

2 个答案:

答案 0 :(得分:5)

可以执行 IIFE (立即调用函数表达式)。这是JS中非常流行的模式。

(function() {print("hello world")})()

答案 1 :(得分:2)

我认为您只是在问是否可以运行一个函数而不显式命名它。当然。

(function(){
  print("hello world")
})()

将匿名函数包装在parens中,然后也用一对parens对其进行“调用”。

> (function(){
+   print("hello world")
+ })()
[1] "hello world"