Ruby 2.5新特征有哪些
导读:本文共1969.5字符,通常情况下阅读需要7分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: Rescue do/end块如果您需要捕获一个块中的异常, 唯一的方法是将其放在begin/end块中。 现在,您可以捕获所有do/end块内的异常。(1..5).eachdo|n|do_something(n)rescueSomeError=>eputsenextend已删除lookup在以前的版本中, 如果Ruby在当前范围内找不到常量, 它会回退到顶... ...
目录
(为您整理了一些要点),点击可以直达。如果您需要捕获一个块中的异常, 唯一的方法是将其放在begin/end块中。 现在,您可以捕获所有do/end块内的异常。
在以前的版本中, 如果Ruby在当前范围内找不到常量, 它会回退到顶级常量, 并发出警告。 在2.5中已更改, 现在这将导致异常。
当打印到控制台时, Ruby将以相反的顺序显示回溯。 您还将以粗体和下划线看到错误消息。 这是一项实验性函数, 并且打印到日志时顺序不会更改。
在进行Rails项目时, 通常需要向后滚动很长一段距离 在回溯中找到那条线 该行显示发生异常的行。 通过反转回溯, 您在导致异常的行上获得上下文 无需向后滚动。
该方法将对象传递给块 并返回该块返回的值。
Ruby社区有很多人 对Elixir感兴趣的人 因此这可能最终成为一个流行的函数。
String#-@
:对未冻结的字符串进行重复数据删除。
delete_prefix
和delete_suffix
(以及bang的!版本)
grapheme_clusters
添加了#append
和#prepend
方法, 分别是#push
和#unshift
的别名。 这些别名已通过ActiveSupport在Rails中引入, 但是很高兴看到它们被引入Ruby。
添加了#slice
和#transform_keys
, 最初也来自ActiveSupport。
这项更改将对您使用Ruby的方式产生零影响, 但是我很好奇为什么我们在stdlib中有一个ubygems.rb
文件, 所以我想提一下,因为它已被删除。
Ruby有一个-r
标志,可让您需要一个库, 例如ruby -rmath
到require 'math'
。 rubygems文件的名称为ubygems.rb
这样该标志可以用作-rubygems
,而不是-rrubygems
。 从Ruby 1.9开始就不需要此文件, 并且现在已从stdlib中删除。
Ruby 2.5新特征有哪些的详细内容,希望对您有所帮助,信息来源于网络。