ruby-on-rails - 从今天开始在 ruby 中获取接下来 7 天的名称数组
问题描述
嗨,我想从今天开始形成一个接下来 7 天的数组,例如:假设今天是星期天,所以结果应该是
["Sunday","Monday","Tuesday",'Wednesday","Thursday","Friday","Saturday"]
解决方案
这是一个很好的小班轮做你想做的事。
(0..6).map{ |n| (Date.today+n).strftime("%A")}
假设今天是星期六,那将产生:
["Saturday", "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]
每个部分的快速解释:
(0..6)
创建一个数字数组:[0, 1, 2, 3, 4, 5, 6]
。
.map { |n| ... }
是在上述数组上调用的函数,它一次将每个元素作为n
.
(Date.today+n)
是一个代表今天的对象(基于您的系统时钟)。它允许您向其添加一个数字以抵消日期,从而创建一个新对象。
最后.strftime("%A")}
在偏移日期对象上调用以从日期对象生成字符串。这"%A"
是字符串星期几的格式指令。
推荐阅读
- lua - 测量 Redis Lua 脚本的性能
- r - R中的BVP:如何获得数值解?
- c# - 正则表达式
- android - 如何将捆绑包从 baseAdapter 发送到片段?
- php - 如何从模型中打印 Yii2 GridView 中的第一个提醒,第二个提醒?
- java - 在 docker 上运行应用程序期间连接被拒绝 - Spring Boot 和 mssql 服务器
- python - 在 python 中比较两个文件的最佳方法,为什么?
- javascript - 为什么这个 json 检索代码不起作用?
- python - 写入 GML 文件时出现 NetworkX 密钥错误
- android - Android单元测试中的资源文件访问“InvocationTargetException”