Previous: Manipulation of function calls, Up: Computing on the language



6.6 函数操作

可以操作一个函数或闭包的分量常常非常有用。 R 为这种目的提供了一整套接口函数。

body
返回函数主体的表达式。
formals
返回一个函数的形式参数列表。它是 pairlist
environment
返回函数的关联环境。
body<-
用给定的表达式设置函数的主体。
formals<-
用给定列表设置函数的形式参数。
environment<-
用给定的环境设置函数的环境。

evalq(x <- 5, environment(f)) 可以改变函数环境中 不同变量的绑定。

as.list可以把一个函数变为列表。 这样做的结果是形式参数的列表和函数主体的连接。相反, 这种列表可以用as.function转换为函数。 这种用法是为了和 S 兼容。注意当as.list被使用时, 环境信息会丢失,而 as.function 有一个参数 允许重新设置环境。