gpt4 book ai didi

ruby - ruby 2.3 安全运算符 "&."和 CoffeeScript 存在运算符 ".?"之间的差异

转载 作者:数据小太阳 更新时间:2023-10-29 07:49:32 24 4
gpt4 key购买 nike

ruby 2.3 安全运算符 &. 和 CoffeeScript 存在运算符 . 之间有什么区别(如果有的话)?

最佳答案

CoffeeScript's existential operator ? returns true unless a variable is null or undefined, which makes it analogous to Ruby's nil?

相反,新的 Ruby 安全导航运算符 &. 用于调用 Object 的方法,该方法可以是 nil 而无需引发异常(exception)。如果对象不是nil,则执行该方法;否则,它返回 nil

像这样:

obj.try!(:method1).try!(:method2)

if obj && obj.method1
#...
end

变成:

obj&.method1&.method2

if obj&.method1
#...
end

引用资料:

关于ruby - ruby 2.3 安全运算符 "&."和 CoffeeScript 存在运算符 ".?"之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34244952/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com