ConvertObj
Object
tap
tap该方法常用于 collections 中一些转换不返回对象本身的方法,比如delete
array = [1, 2, 3]
array.delete(2) # => 2
array.tap { |a| a.delete(2) } # => [1, 3]
# array => [1, 3]dup&clone
dup只获取到对象的值,而clone会用获取到的值调用initialize方法新建一个对象
需要注意的是,dup和clone都是浅拷贝,对于数组中的元素仍然是引用值
arr = ["A", "B", "C"]
arr.dup.each { &:downcase }
# arr => ['a', 'b' , 'c']
arr.clone.each { &:downcase }
# arr => ['a', 'b' , 'c']常用方法
判断类型
Enumerable
inject
The inject and reduce methods are aliases.
向传入参数中依次执行传入的方法或者块,方法中的返回值作为下一次循环的传入参数,并在执行完返回
each_with_object
对enum 中每一个元素操作,传入参数可以作为方法块的第二个参数使用
each or map
Hash
创建
定义方法时的默认Hash
常用方法
hash_to_obj
ActiveRecorde _to_hash
deep_values
嵌套安全获取
Array
常用方法
遍历
merge
某些情况下对某个有可能为nil的变量添加值或者创建数组:
去除空元素
String
字符串替换
截取
分组正则匹配替换
其中([=+-])在替换的字符串中的表示为\1
Time
常用方法
日期格式输出
字符串转化
最后更新于
这有帮助吗?