继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Ruby 2.3.0新增的操作符 &. 安全导航符

MMTTMM
关注TA
已关注
手记 438
粉丝 65
获赞 364
&.  操作符作用: 起到空指针保护的作用,和 Rails ActiveSupport 引入的方法try作用相似

例如 一个user 有一个address,如果你想使用这个address代码如下

  1. 第一种写法

if user && user.address## some code end首先,先判断这个user不能为nil, 然后再判断 address 不能为nil,同时不为nil 的时候你才能操作这个address
  1. 使用ActiveSupport的try

if user.try(:address)  ## some code end
  1. 使用&.

if user&.address  ## some code end

如上我们看到 &.用法更简洁


备注:
第一种和使用&.的结果是一样的。
和try的不同:
try不会去判断对象上是否能响应方法,如果不能最终返回的结果是nil,
&.则会检查对象是否能响应方法
更多信息可以看这里



作者:就叫初九吧
链接:https://www.jianshu.com/p/8b651079e76b

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP