回答編集履歴
1
Refactor code
answer
CHANGED
@@ -9,22 +9,24 @@
|
|
9
9
|
// Create an array like:
|
10
10
|
// [0, 1, 2, 3, 4, 5, 4, 3, 2, 1]
|
11
11
|
createUpDownCyclesArray = function(cycleLength) {
|
12
|
-
arrayCombine = function(incrementalArray, decrementalArray) {
|
13
|
-
decrementalArray.shift()
|
14
|
-
decrementalArray.pop()
|
15
|
-
|
16
|
-
return incrementalArray.concat(decrementalArray)
|
17
|
-
}
|
18
|
-
|
19
12
|
// Create an array like:
|
20
13
|
// [0, 1, 2, 3, 4, 5]
|
21
14
|
incrementalArray =
|
22
15
|
Array.apply(null, Array(cycleLength + 1))
|
23
16
|
.map(function(_, i) { return i })
|
24
17
|
|
18
|
+
// Create an array like:
|
19
|
+
// [0, 1, 2, 3, 4, 5] => [4, 3, 2, 1]
|
20
|
+
decrementalArray =
|
21
|
+
(function(incrementalArray){
|
25
|
-
|
22
|
+
decrementalArray = incrementalArray.slice().reverse()
|
23
|
+
decrementalArray.shift()
|
24
|
+
decrementalArray.pop()
|
26
25
|
|
26
|
+
return decrementalArray
|
27
|
+
})(incrementalArray)
|
28
|
+
|
27
|
-
return
|
29
|
+
return incrementalArray.concat(decrementalArray)
|
28
30
|
}
|
29
31
|
|
30
32
|
self = this // for refer outer context of `this` from inner context
|