You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ruby中有没有类似CSS nth-child的方法选择倒数第二个元素?

实现方法

Ruby 数组原生支持负下标定位元素,-1 对应最后一个元素,-2 就是倒数第二个元素,配合安全导航符就能兼容边界异常。
你可以把原代码第三行替换为以下任意一种写法:

  1. 负下标写法:
result = card.attachments&.[](-2)&.url
  1. 更易读的at方法写法:
result = card.attachments&.at(-2)&.url
  1. 如果你使用的Ruby版本 >=2.5,还可以用语义更明确的second_to_last方法:
result = card.attachments&.second_to_last&.url

以上写法都兼容你原有逻辑的异常处理:如果attachments为空、或者元素总数不足2个时,会直接返回nil,不会抛出下标越界错误。

内容的提问来源于stack exchange,提问作者McKay Whiting

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 22:48:02