Javascript 在多个日期分发事件
您好,我有一个日历视图(3天视图),我必须在3天视图中显示多天事件。我无法生成事件矩阵Javascript 在多个日期分发事件,javascript,c,react-native,matrix,Javascript,C,React Native,Matrix,您好,我有一个日历视图(3天视图),我必须在3天视图中显示多天事件。我无法生成事件矩阵 3/10/18 | 4/10/18 | 5/10/18 3.......|3........|9....... ........|5........|5....... 7.......|7........|........ 3、5、9。。。。和7。。。。是在3×3矩阵中分层的多个日期事件 一般的事件结构是这样的 { id: 123, name: "3", startTimestamp:
3/10/18 | 4/10/18 | 5/10/18
3.......|3........|9.......
........|5........|5.......
7.......|7........|........
3、5、9。。。。和7。。。。是在3×3矩阵中分层的多个日期事件
一般的事件结构是这样的
{ id: 123, name: "3", startTimestamp: 1538524800 endTimestamp: 1538611200 }
我试过:-
let events = [{ id: 3, name: "3", start: 3, end: 4}, { id: 5, name: "5", start: 4, end: 5}, { id: 7, name: "7", start: 3, end: 4}, { id: 9, name: "9", start: 5, end: 9}];
let dates = [3, 4, 5];
function abc1 () {
let result = [
[
undefined, undefined, undefined
], [
undefined, undefined, undefined
], [
undefined, undefined, undefined
]
];
for (let i=0; i<dates.length; i++) {
let date = dates[i];
let index = 0;
for (let j=0; j<events.length; j++) {
let event = events[j];
if (event.start<= date && date <= event.end) {
result[index][i] = event.id;
index ++;
}
}
}
console.log("Result ", result);
};
Result [[3, 3, 5], [7, 5, 9], [undefined, 7, undefined]]
let events=[{id:3,name:3,start:3,end:4},{id:5,name:5,start:4,end:5},{id:7,name:7,start:3,end:4},{id:9,name:9,start:5,end:9}];
让日期=[3,4,5];
函数abc1(){
让结果=[
[
未定义,未定义,未定义
], [
未定义,未定义,未定义
], [
未定义,未定义,未定义
]
];
对于(设i=0;i您尝试过三维数组吗?struct EventsModel{
struct EventsModel {
var id:Int
var name: String
var start:Int
var end:Int
}
let events = [EventsModel(id: 3, name: "3", start: 3, end: 4), EventsModel(id: 5, name: "5", start: 4, end: 5 ), EventsModel(id: 7, name: "7", start: 3, end: 4), EventsModel(id: 9, name: "9", start: 5, end: 9)]
var dates:[Int] = [3, 4, 5]
var finaloutput:[[String]] = []
dates = dates.sorted()
for event in events {
var outEventArr:[String] = []
for date in dates {
if date >= event.start && date <= event.end {
outEventArr.append(event.name)
} else {
outEventArr.append("undefined")
}
}
finaloutput.append(outEventArr)
}
print(finaloutput)
变量id:Int
变量名称:String
变量开始:Int
变量结束:Int
}
让事件=[EventsModel(id:3,名称:“3”,开始:3,结束:4),EventsModel(id:5,名称:“5”,开始:4,结束:5),EventsModel(id:7,名称:“7”,开始:3,结束:4),EventsModel(id:9,名称:“9”,开始:5,结束:9)]
变量日期:[Int]=[3,4,5]
var finaloutput:[[String]]=[]
dates=dates.sorted()
事件中的事件{
var outEventArr:[字符串]=[]
日期中的日期{
如果date>=event.start&&date,我在x轴上有天,在y轴上有事件。我不需要三维矩阵。请帮助使用二维矩阵。在z轴上可以添加事件。它很容易处理…如果您需要困难的方法,请回复。事件在y轴上(不在z轴上)。请检查2d矩阵的任何解决方案。预期输出是什么?预期输出是:[[3,3,9],[undefined,5,5],[7,7,undefined];