if (ax_response = OpenID::AX::FetchResponse.from_success_response openid_response)在上面的代码行,如果我去掉()括号,它会抛出一个语法错误..Unexpected tIdentifier。为什么?
发布于 2013-02-20 03:53:06
Ruby很擅长学习任意的语法,但是如果没有括号来指导它,有时它就不能理解你的意图。在这种情况下,您有两个选择。
将if语句括起来:
if (var = method arg)
end将参数括在括号内:
if var = method(arg)
end如果没有某种形式的指导,它将无法锁定您的声明的确切含义。如果你有类似Perl、C++或JavaScript这样的背景,其中括号不是可选的,那么这永远不是问题。Ruby就是不寻常的宽宏大量。
https://stackoverflow.com/questions/14965971
复制相似问题