是否可以在最后用一声巨响对方法进行猴子修补?
我想猴子补丁String.upcase!
,但我不知道如何实现。
问题是我想更改原始字符串对象。
这是一个例子:
class String
def upcase!
self.mb_chars.upcase.to_s
end
end
现在,如果我在控制台中输入它并尝试一下,它就不起作用:
[1] pry(main)> asd="asd"
=> "asd"
[2] pry(main)> asd.upcase
=> "ASD"
[3] pry(main)> asd
=> "asd"
[4] pry(main)> asd.upcase!
=> "ASD"
[5] pry(main)> asd
=> "asd"