react-native - 在 React Native 中实现一个包含月份和日期的二维数组
问题描述
我想实现一个包含月份(按名称)和日期(如 - 01/01/2020)的二维数组(稍后我会将其推送到 Firebase db)
目标是在firebase中它看起来像这样:每个月的文档(Jan,Feb等......)在每个文档内部:某个月份的日期(1/1/20,2/1/20和ETC)
月份数组:
const months = new Array(11);
months[0] = "Jan";
months[1] = "Feb";
months[2] = "Mar";
months[3] = "Apr";
months[4] = "May";
months[5] = "Jun";
months[6] = "Jul";
months[7] = "Aug";
months[8] = "Sep";
months[9] = "Oct";
months[10] = "Nov";
months[11] = "Dec";
日期推送代码(将所有 365 个日期推送到数组中):
const dates = [];
for (
firstDay;
firstDay < lastDay;
firstDay.setDate(firstDay.getDate() + 1)
) {
dates.push(new Date(firstDay));
}
如何使用以下代码实现我想要的?
解决方案
好吧,月份应该是一个字符串数组(如您的第一段代码所示)或一个数组数组(数字......天......)。
不可能两者兼而有之。
由于您想要二维数组,因此您可能正在寻找第二个选项,然后字符串(“Jan”、“Feb”等)没有任何意义。
要实现二维数组,您可以执行以下操作:
const daysInMonth = [31, 28, 31, 30, ...];
const array2d = [];
for (let i = 0; i < 12; i++) {
const days = [];
for (let j = 0; j < daysInMonth[i]; j++) {
days.push(j);
}
array2d.push(days);
}
如果你想用字符串来实现第一个选项(我假设你不会像 firebas 的 2d 数组那样......),那么你可以用对象来做到这一点:
{
Jan: [0,1,2,...31],
Feb: [0,1,2,...28],
...
}
推荐阅读
- sql - SQL 转换数据
- html - HTML/CSS - 如何将三个中间的 div 居中,独立于周围的 div
- python - 来自 Ordered Dict 的 Python Json
- javascript - 递归 JQuery 以在文本中格式化 HTML 节点值
- android - 如何为两个视图设置约束?
- java - 如何使用 Java 反射从文件中读取类和对象名称?
- java - jax-rs 中的集中式 SecurityContext 注入
- jquery - DataTables水平滚动状态保存
- java - Simpleadapter(带有子项的 JSON)
- python - 我将如何将这些多个连接作为 Django 查询集进行?