Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in / Register
Toggle navigation
T
topjs3-demos
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Leon Li
topjs3-demos
Commits
61b960f8
Commit
61b960f8
authored
May 12, 2020
by
l2m2
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
upload
parent
0a5abf3b
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
21 additions
and
19 deletions
+21
-19
reduce.js
src/reduce.js
+21
-19
No files found.
src/reduce.js
View file @
61b960f8
var
_
=
require
(
"lodash"
);
var
_
=
require
(
"lodash"
);
var
arr
=
[
{
name
:
'A'
,
a
:
1
,
b
:
2
},
var
analysis_state_data
=
[
{
name
:
'A'
,
a
:
2
,
b
:
3
},
{
"start_time"
:
"2020-05-12 12:58:29"
,
"end_time"
:
"2020-05-12 13:02:06"
},
{
name
:
'B'
,
a
:
1
,
b
:
2
},
{
"start_time"
:
"2020-05-12 13:02:06"
,
"end_time"
:
"2020-05-12 13:08:08"
},
{
name
:
'C'
,
a
:
4
,
b
:
5
},
{
"start_time"
:
"2020-05-12 13:08:08"
,
"end_time"
:
"2020-05-12 13:08:21"
},
{
name
:
'C'
,
a
:
5
,
b
:
6
},
{
"start_time"
:
"2020-05-12 13:08:08"
,
"end_time"
:
"2020-05-12 13:08:26"
},
{
name
:
'C'
,
a
:
1
,
b
:
1
},
{
"start_time"
:
"2020-05-12 13:08:21"
,
"end_time"
:
"2020-05-12 13:08:57"
},
{
name
:
'D'
,
a
:
7
,
b
:
8
}
{
"start_time"
:
"2020-05-12 13:09:43"
,
"end_time"
:
"2020-05-12 13:10:10"
}
];
];
var
r
=
_
.
chain
(
arr
).
reduce
(
function
(
prev
,
curr
){
analysis_state_data
=
_
.
reduce
(
analysis_state_data
,
function
(
prev
,
curr
,
index
){
if
(
_
.
has
(
prev
,
curr
.
name
))
{
if
(
prev
.
length
>
0
)
{
var
temp
=
prev
[
curr
.
name
];
if
(
curr
.
start_time
==
prev
[
prev
.
length
-
1
].
start_time
)
{
temp
.
a
=
temp
.
a
+
curr
.
a
;
prev
[
prev
.
length
-
1
]
=
curr
;
temp
.
b
=
temp
.
b
+
curr
.
b
;
}
else
{
}
else
{
prev
.
push
(
curr
);
prev
[
curr
.
name
]
=
curr
;
}
}
}
else
{
return
prev
;
prev
.
push
(
curr
);
},
{}).
values
().
value
();
}
return
prev
;
},
[]);
print
(
JSON
.
stringify
(
r
,
null
,
' '
));
print
(
JSON
.
stringify
(
analysis_state_data
,
null
,
' '
));
\ No newline at end of file
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment