ruby 2.3安全操作符&.
与CoffeeScript存在操作符.?
答案 0 :(得分:6)
除非变量,否则CoffeeScript的存在运算符
?
将返回true 是null还是未定义,这使得它类似于Ruby的nil?
相反,新的Ruby安全导航操作符&.
用于调用Object
的方法,该方法可以nil
而不会引发异常。如果对象不是nil
,则执行该方法;否则,它返回nil
。
这样的事情:
obj.try!(:method1).try!(:method2)
if obj && obj.method1
#...
end
变为:
obj&.method1&.method2
if obj&.method1
#...
end
参考文献: