引自哈德利的书advanced R: Environments
封闭环境属于该函数,即使将该函数移动到其他环境,也不会更改。
以下代码显示f
的封闭环境被修改为环境e
。那么说“封闭环境不会改变”究竟是什么意思呢?
f = function() { }
environment(f) # <environment: R_GlobalEnv>
e = new.env()
environment(f) = e
environment(f) # <environment: 0x2a01c88>