下面的函数尝试了几种在管道后返回的方法。
returnTry = function(){
3 %>% return
4 %>% return()
5 %>% return(.)
return(6)
7
}
但是,如果我尝试使用此功能,则所有管道尝试都会失败
> returnTry()
[1] 6
为什么会这样?我怀疑它是关于管道内发生的非标准评估,但无法确定确切原因。
作为奖励(免责声明:我不会在我的代码中使用此功能。我不推荐使用它,因为它可能会降低代码的可读性),有一个"管道& #34;这样可行。 bizarro pipe。
returnTry = function(){
3 %>% return
4 %>% return()
5 %>% return(.)
6 ->.;return(.)
return(7)
8
}
返回6.