1
+ const isEven = ( num ) => num % 2 === 0 ;
2
+
3
+ let number = [ 1 , 23 , 42 , 1244 , 213 , 43 , 265 , 3 , 2 , 3215 , 322 , 254 , 32 , 11 ] ;
4
+
5
+ let evenNumber = number . filter ( ( data ) => isEven ( data ) )
6
+ console . log ( 'Even Numbers : ' , evenNumber ) ;
7
+
8
+ let oddNumber = number . filter ( ( data ) => ! isEven ( data ) )
9
+ console . log ( 'Odd Number : ' , oddNumber ) ;
10
+
11
+
12
+
13
+ let todoList = document . getElementById ( "todo_list" ) ;
14
+ let search_input = document . getElementById ( "search_input" ) ;
15
+ let priority_dropdown = document . getElementById ( "priority" ) ;
16
+
17
+ var todos = [
18
+ {
19
+ task : "Buy groceries" ,
20
+ category : "Personal" ,
21
+ priority : "High" ,
22
+ } ,
23
+ {
24
+ task : "Prepare presentation for Monday meeting" ,
25
+ category : "Work" ,
26
+ priority : "High" ,
27
+ } ,
28
+ {
29
+ task : "Clean the house" ,
30
+ category : "Personal" ,
31
+ priority : "Medium" ,
32
+ } ,
33
+ {
34
+ task : "Finish project report" ,
35
+ category : "Work" ,
36
+ priority : "High" ,
37
+ } ,
38
+ {
39
+ task : "Schedule dentist appointment" ,
40
+ category : "Health" ,
41
+ priority : "Medium" ,
42
+ } ,
43
+ {
44
+ task : "Go for a run" ,
45
+ category : "Health" ,
46
+ priority : "Low" ,
47
+ } ,
48
+ {
49
+ task : "Call mom" ,
50
+ category : "Personal" ,
51
+ priority : "High" ,
52
+ } ,
53
+ {
54
+ task : "Plan weekend trip" ,
55
+ category : "Personal" ,
56
+ priority : "Low" ,
57
+ } ,
58
+ {
59
+ task : "Attend yoga class" ,
60
+ category : "Health" ,
61
+ priority : "Medium" ,
62
+ } ,
63
+ {
64
+ task : "Complete online course" ,
65
+ category : "Learning" ,
66
+ priority : "High" ,
67
+ } ,
68
+ {
69
+ task : "Read a book" ,
70
+ category : "Personal" ,
71
+ priority : "Low" ,
72
+ } ,
73
+ {
74
+ task : "Update LinkedIn profile" ,
75
+ category : "Work" ,
76
+ priority : "Medium" ,
77
+ } ,
78
+ {
79
+ task : "Water the plants" ,
80
+ category : "Personal" ,
81
+ priority : "Low" ,
82
+ } ,
83
+ {
84
+ task : "Prepare for job interview" ,
85
+ category : "Work" ,
86
+ priority : "High" ,
87
+ } ,
88
+ {
89
+ task : "Meditate for 15 minutes" ,
90
+ category : "Health" ,
91
+ priority : "Low" ,
92
+ } ,
93
+ {
94
+ task : "Complete homework assignment" ,
95
+ category : "Learning" ,
96
+ priority : "High" ,
97
+ } ,
98
+ {
99
+ task : "Watch educational video" ,
100
+ category : "Learning" ,
101
+ priority : "Medium" ,
102
+ } ,
103
+ {
104
+ task : "Organize workspace" ,
105
+ category : "Work" ,
106
+ priority : "Medium" ,
107
+ } ,
108
+ {
109
+ task : "Research new investment opportunities" ,
110
+ category : "Learning" ,
111
+ priority : "Medium" ,
112
+ } ,
113
+ {
114
+ task : "Cook a healthy meal" ,
115
+ category : "Health" ,
116
+ priority : "Medium" ,
117
+ } ,
118
+ ] ;
119
+
120
+ function createElement ( todo , category , priority ) {
121
+ var ele = `<div class="border rounded-md p-3 mt-4 w-80 text-center m-auto">
122
+ <h1 class="font-bold text-2xl">${ todo } </h1>
123
+ <h3 class="font-medium text-lg">${ category } </h3>
124
+ <h3 class="${
125
+ priority === "High"
126
+ ? `bg-red-600`
127
+ : priority === "Medium"
128
+ ? "bg-green-600"
129
+ : "bg-blue-600"
130
+ } inline-block py-1 px-3 my-3 text-white rounded-md">${ priority } </h3>
131
+ </div>` ;
132
+ return ele ;
133
+ }
134
+
135
+ function renderTodos ( ) {
136
+ todoList . innerHTML = "" ;
137
+ todos . forEach ( ( data , ind ) => {
138
+ var todoItem = createElement ( data . task , data . category , data . priority ) ;
139
+ todoList . innerHTML += todoItem ;
140
+ } ) ;
141
+ }
142
+ renderTodos ( ) ;
143
+
144
+ search_input . addEventListener ( "change" , function ( ) {
145
+ //search from task
146
+ let searchFilter = todos . filter ( ( data ) =>
147
+ data . task . toLowerCase ( ) . includes ( this . value . toLowerCase ( ) )
148
+ ) ;
149
+
150
+ // run for each on the array return from filter
151
+ todoList . innerHTML = "" ;
152
+ searchFilter . forEach ( ( data , ind ) => {
153
+ var todoItem = createElement ( data . task , data . category , data . priority ) ;
154
+ todoList . innerHTML += todoItem ;
155
+ } ) ;
156
+ } ) ;
157
+
158
+ priority_dropdown . addEventListener ( "change" , function ( ) {
159
+ let priorityFiltered = todos . filter ( ( data ) => data . priority == this . value ) ;
160
+
161
+ // run for each on the array return from filter
162
+ todoList . innerHTML = "" ;
163
+ priorityFiltered . forEach ( ( data , ind ) => {
164
+ var todoItem = createElement ( data . task , data . category , data . priority ) ;
165
+ todoList . innerHTML += todoItem ;
166
+ } ) ;
167
+ } ) ;
0 commit comments