相关疑难解决方法(0)

解释为局部变量会覆盖方法名称吗?

此问题一样,当在其自己的赋值中使用未定义的局部变量时,将对其进行求值nil.

x = x # => nil 
Run Code Online (Sandbox Code Playgroud)

但是当局部变量的名称与现有方法名称冲突时,它更棘手.为什么下面的最后一个例子会返回nil

{}.instance_eval{a = keys} # => []
{}.instance_eval{keys = self.keys} # => []
{}.instance_eval{keys = keys} # => nil
Run Code Online (Sandbox Code Playgroud)

ruby local-variables self-reference

5
推荐指数
1
解决办法
1108
查看次数

标签 统计

local-variables ×1

ruby ×1

self-reference ×1