微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将代码从Ruby 1.8迁移到1.9

如何解决将代码从Ruby 1.8迁移到1.9

| 我在将Rails代码从Ruby 1.8.7迁移到1.9.2时遇到问题。我不了解Ruby的行为。 我有一个带有一个元素(一个字符串)的数组。
my_var = [“Bla blubb and foo bar”]
然后我打电话给:
some text #{my_var}
在Ruby 1.8中,我得到
some text Bla blubb and foo bar
。 在Ruby 1.9中我得到
some text [\\\"Bla blubb and foo bar \\\"]
为什么有区别?我如何避免这种行为?     

解决方法

        您正在对字符串数组调用to_s。在1.8中等效于调用join,在1.9中等效于调用inspect。 若要在1.8和1.9中获得所需的行为,请调用join而不是to_s。     ,        您所遇到的差异与Ruby将数组转换为跨不同版本的字符串的方式有关。在1.9之前,Ruby仅通过串联数组中的字符串来表示数组。在1.9(以及以后的版本)中,Ruby以更类似于代码的格式表示数组。以这种方式进行操作更有意义,它鼓励您明确地说出您的意思。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。